如何动态生成EXCEL图形报表(如果问题原理清楚,高分相送) ( 积分: 100 )

  • 主题发起人 主题发起人 franklky
  • 开始时间 开始时间
F

franklky

Unregistered / Unconfirmed
GUEST, unregistred user!
最近在做EXCEL图形报表的时候,发现对于EXCEL的图形统计部分知识甚少,本人花了大量时间查询资料,可是雷同之处太多,抄袭严重。于是本人自己琢磨了一些办法,通过录制EXCEL宏的方法取得相关数据,可是由于打印的时候是动态生成表格,所以要生成的图形的数据来源无法固定,不知道怎样把取得动态生成的数据行数、列数以及其他相关数据传入程序,因为 EXCEL是以A1..D6类似这样的形式来控制单元格,或者用range控制范围,不知道怎样能够把EXCEL中的范围传递进去,希望有人能给个例子启发,具体点讲就是利用动态生成的数据控制EXCEL的Char图形元素生成图形,关键是程序中Chart图形的数据源如何设置
 
最近在做EXCEL图形报表的时候,发现对于EXCEL的图形统计部分知识甚少,本人花了大量时间查询资料,可是雷同之处太多,抄袭严重。于是本人自己琢磨了一些办法,通过录制EXCEL宏的方法取得相关数据,可是由于打印的时候是动态生成表格,所以要生成的图形的数据来源无法固定,不知道怎样把取得动态生成的数据行数、列数以及其他相关数据传入程序,因为 EXCEL是以A1..D6类似这样的形式来控制单元格,或者用range控制范围,不知道怎样能够把EXCEL中的范围传递进去,希望有人能给个例子启发,具体点讲就是利用动态生成的数据控制EXCEL的Char图形元素生成图形,关键是程序中Chart图形的数据源如何设置
 
这么多人看,就没有做过的么,给点思路啊,现在主要是传递
SERIES("服务费",业绩!$A$7:$A$18,业绩汇总!$S$7:$S$18,2)
这个怎么确定,开始可以确定,但是结尾怎样确定,怎么把他设置在setsourcedata()中
$A$7:$A$18,就是这个范围,怎样根据动态生成的数据确定记录尾部的位置
 
想必楼主已经看过很多这方面的资料了,那么楼主应该知道怎么使用插入数据等等操作了,对VBA也会有一定了解,下面就是在VBA里面插入图表的方式,得到下面的脚本很容易,建立一个宏就可以了,你自己想要什么效果就录制什么宏,把代码移植到Delphi就可以了,如果不明白,可以留下你的联系方式
Sub Macro1()
'
' Macro1 Macro
' 匿名用户 记录的宏 2005-9-10
'
'
Charts.Add
ActiveChart.ChartType = xlBarStacked
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("A1"), PlotBy:= _
xlRows
ActiveChart.SeriesCollection.NewSeries
ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet1"
ActiveChart.HasLegend = True
ActiveChart.Legend.
Select
Selection.Position = xlTop
End Sub
 
你是什么样的EXCEL图表series bar或是什么
我知道如何做,我做的是动态series
留个邮箱吧
 
谢谢各位对此问题的关注!我的email是:linkuiyang@eyou.com.linkuiyang@tom.com.
本人全天关注对此问题的讨论结果。现在本人可以把图形生成出来,但是有个问题还是多少弄不清楚,希望各位不吝赐教!
问题如下:
WorkBook.ActiveChart.SetSourceData(WorkSheet.Range['D6:E8'],plotby:=2);
现在假设动态生成10条记录那么范围的开始位置可以假定A1,这个比较容易确定,但是对于记录的结束位置该怎样确定,结束位置可以是A10,B10...等,现在想把这个A1,D10做为一个变量传递进去,如:d:=1;aa:=A+inttostr(d),相信您能明白我的思想,然后Range[aa:aa],(注意这里是错误的,仅仅代表本人的思想),问题也就在这里,不知道该如何写进去,现在本人正在积极努力的试验方法,以求早日解决。正所为会者不难,难者不会矣!希望各位经验丰富的朋友多多给予指点!
迷途小弟不胜感谢!
 
我的图形是饼图和柱形图,如果各位知道结果可以发邮件到我的信箱,我到时候把QQ留给各位。谢谢各位!
 
谢谢各位!我的实验已经成功了!挺另人兴奋的。希望保持联系,我的邮箱相信各位已经知道了,希望各位随时关注!
对于二位的热心帮忙,不胜感谢,各加50分!不要嫌少啊!
我的分不多,要是多的话要多少都成,呵呵!
 
如果各位有EXCEL操纵的实际例子资料,希望能传几个给我!希望多学习点![:)]
 
成功是咋成功的,贴上来大家也学习一下呗
 
excel.activeChart.Axes(xlCategory, xlPrimary).HasTitle := True;
这个下标怎么加不上去?
 
xlcatetory和xlvalue不识别?怎么回事?
 
后退
顶部