通过VBA代码动态设置Access报表Graph控件的数据源
发布网友
发布时间:2024-07-03 21:21
我来回答
共1个回答
热心网友
时间:2024-07-24 08:54
如何通过程序动态设置报表中GRAPH控件的数据源?能否写出具体的设置语句 我的GRAPH就是微软OFFICE 2000自带的。
tmtony
1. 初次尝试:
G_1.RowSource=SQL语句不行吗 g_1是graph
清空为 select fld1 as "空", fld2 as 0 from table1
caijun64 回复
不行,我就是这样做的,但不行,出错,错误信息为:“运行时错误2455,你输入的表达式对属性rowsource的引用无效。”。
注:我是在Access 2000中report的Open事件中对Graph控件的Rowsource属性赋SQL语句的。
2. 再次尝试:
我找到我原来的有图表的报表程序,发现我说错一件事。
图表的rowsource在程序中是无法真正动态产生的(我为此找过很长一段时间啦,微软也没给过正确答案给我)
我现在所谓的动态生成是生成它的源,即图表绑定到一个查询,你动态改变这个查询
改变查询的方法:
Dim mydb As dao.Database
Dim qdf As dao.QueryDef
Set mydb = CurrentDb
Set qdf = mydb.QueryDefs("test_v")
qdf.SQL = Form_SPCÊý¾Ý²éѯ.¿ØÖÆͼ.Form.¿ØÖÆͼ.RowSource
qdf.Close
这是 真正动态生成图表数据源,且用于网络环境,可针对不同用户生成不同的SQL,动态设定图表数据源。
3. 其它实现方法:
还有种方式就是先隐藏打开到设计状态,然后改变rowsource 后,再关闭打开到预览方式
这是我当时想的,但因为在MDB方式, 我觉得上面的方式会更好。
其它我还找不到好的方法
通过VBA代码动态设置Access报表Graph控件的数据源
G_1.RowSource=SQL语句不行吗 g_1是graph 清空为 select fld1 as "空", fld2 as 0 from table1 caijun64 回复 不行,我就是这样做的,但不行,出错,错误信息为:“运行时错误2455,你输入的表达式对属性rowsource的引用无效。”。注:我是在Access 2000中report的Open事件中对Graph控件的Rows...
求教ACCESS生成报表如何加上序号问题
可以用VBA编程,在报表的主体格式化事件里累加变量并将变量作为记录行的序号显示到非绑定文本框里。下面提供示例方案供参考:未绑定文本框显示序号 编写下列事件过程 Option Compare DatabaseDim rowNum As Integer, showNum As BooleanPrivate Sub Report_NoData(Cancel As Integer) showNum = FalseEnd S...
求access报表使用VBA设置页面的方法
点击预览报表,点击工具条里的“设置”,就搞定了。页边距、方向、分列就要看你自己怎么分了,可能要你自己在设计报表时自己用线条画出来。
VBA可以给access中某一报表中的某一标签赋值吗?代码是什么。
在Access的报表中,焦点是不存在的.请尝试在文本框所在节的格式化事件或打印事件过程中,用代码处理 如:me.label1.caption ="标题"
如何在ACCESS的报表中改变主体某控件的控件来源?
右键看属性.从数据里点记录源右侧向下箭嘴就能重新指定了,三个点能重新修改字段.如果一旦调用了,就不能再修订了,应该用在docmd.openreport 命令之前.但你得注意报表中其他字段的一致性.把同类数据分组不是好办法,应该放到一个表中,利用查询得到你要的数据.建议别用修改记录源的办法实现报表显示内容.
如何将ACCESS数据库中的数据通过VBA程序提出 放入 EXCEL工作表中 求...
Public conn As New ADODB.Connection 在sheet1中写以下代码:Private Sub Worksheet_Activate()dfile = "数据库文件位置" 比如:"c:\a.mdb"On Error Resume Next conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dfile conn.Open Sql = "select * from 表名 or...
access窗体中控件的常用属性 access窗体都有哪些属性呢
3、常用的数据属性:控件来源(ControlSource):设置控件如何检索或保存在窗体中要显示的数据。如果控件来源中包含一个字段名,那么在控件中显示的就是数据表中该字段的值。在窗体运行中,对数据所进行的任何修改都将被写入字段中;如果设置该属性值为空,除非通过程序语句,否则在窗体控件中显示的数据将不...
access中vba的dlookup语句如果查询到多个符合条件的结果怎完全显示出来...
你不能直接用查询语句吗?一个文本框怎么可能显示四个影响行数据?那就不要让他文本框显示啊,要么用子报表、要么用自窗体或者表格。直接用SQL语句就解决了:表格控件数据源直接指向查询:Me.RecordSource="Select * From 表 where 你要的条件"Me.Refresh Me.DataGrid1.DataSource=Me ...
Execl_VBA操作Access数据库。查询,更新,删除
strSQL = "SELECT * FROM TMB WHERE False" With adoRt '// 设置需要连接数据库 .ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\TM.mdb" .CursorLocation = 3 .CursorType = 1 .LockType = 3 '// 设置SQL语句 .Source = strSQL '//...
access问题: 文本框怎么与数据表的数据进行运算 。。。
Me.Refresh 这就算给窗体一个数据源了。在窗体数据里你可以任意进行计算,操作刚才给的数据源时一定要注意判断是否连接溢出:If Not Me.Recordset.EOF Then Me.Recordset.Fileds("字段名") 直接可以运算,=-X/ 都可以 你也可以在查询里先将逻辑计算好,VBA代码显示出结果就行了,后者是最常用的...