感谢狐爸的提示,我在组合框内容变更事件里写了下面的代码
=======================================================
Dim nf As WinForm.ComboBox = e.Form.Controls("ComboBox1")
nf.ComboList = DataTables("统计表1").GetComboListString("年") '定义nf(年份)这个组合框,内容为统计表1的“年”列的值
Tables("表B").Filter = ("日期 >= #1/1/" & nf.Text & "# and 日期 <= #12/31/" & nf.Text & "#") '利用组合框的值来对表B做筛选 筛选出当年的数据
Dim g As New CrossTableBuilder("统计表1", DataTables("表B")) ’下面是复制的系统自动生成的交叉汇总的代码
g.HGroups.AddDef("日期", DateGroupEnum.Year, "年")
g.VGroups.AddDef("商品")
g.Totals.AddDef("销量", "销量")
g.Build()
=========================================================
当我点选组合框的值时,陷入死循环,我估计是由于组合框的值来自于汇总的临时表,而点选组合框的值对源表B做筛选,导致筛选、汇总之间陷入死循环
不知狐爸有啥好建议没有?