3

MS Access 2010 的普通图表小部件的外观不是很吸引人。

是否有可能(以及如何?)在 Access 中嵌入相当有吸引力的 Excel 图表并用来自查询的数据(动态)填充它们?

PS:

因为我想根据用户输入更新图表,所以无法使用数据透视图。

4

1 回答 1

2

使用图表的一些注意事项

Sub OpenMyChart()
''You could do this part without code, but let use say you want VBA
sSQL = "SELECT Table1.AText AS ACategory, Table1.ANumber AS AData, " _
     & "Table1.ADate AS AFilter, Table1.ATime AS ASeries " _
     & "FROM Table1 WHERE Table1.ADate=#1/20/2012#"

''This is the query that my Chart form uses
CurrentDb.QueryDefs("Chart").SQL = sSQL

''You can use a Where statement for opening the form, too
DoCmd.OpenForm "Chart", acFormPivotChart, , "ACategory='Bob'"
End Sub

使用类似设置和子表单的另外两种方法。

/1。使用链接子字段和主字段

链接主字段设置为列表框控件的名称,链接子字段设置为图表的相关字段:

Link Master Field: List1;List2
Link Child Field: AFilter;ACategory

单击相关控件将重绘图表。

图表

/2。使用查询并强制重绘:

Private Sub List1_Click()
sSQL = "SELECT Table1.AText AS ACategory, Table1.ANumber AS AData, " _
     & "Table1.ADate AS AFilter, Table1.ATime AS ASeries " _
     & "FROM Table1 WHERE Table1.ADate=#" _
     & Format(Me.List1, "yyyy/mm/dd") & "#"1/13/2013#"

''This is the query that my Chart form uses
CurrentDb.QueryDefs("Chart").SQL = sSQL

''Chart is the name of the subform control, and confusingly, 
''the name of the embedded form.
Me.Chart.SourceObject = "Chart"
End Sub
于 2013-02-18T13:44:19.100 回答