Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

这段代码错在那里? 求教各位大神

qq777  发表于:2015-12-07 21:47:48  
复制

 菜鸟求助,我要更新查询AAA中的 三总分 

Dim varA As String
varA = "AAA"


DoCmd.RunSQL "UPDATE varA SET varA.三总分 = [varA]![语文]+[varA]![数学]+[varA]![英语], AAA.三平均 = ([varA]![语文]+[varA]![数学]+[varA]![英语])/3;  ", -1


这段代码错在那里?
求教各位大神 

 

Top
缪炜 发表于:2015-12-08 08:27:11
不能更新查询,只能更新查询

qq777 发表于:2015-12-08 09:11:39
大神,听不懂你说什么!

cspa 发表于:2015-12-08 11:06:41

你这没头没脑的代码,想帮你都难

"[varA]![语文]+[varA]![数学]+[varA]![英语], AAA.三平均 "是什么?记录集?控件?还是...?!@#$%^&*()



zhaoyoulong 发表于:2015-12-08 16:43:51
varA 是个什么东东?是窗体名称 又是 表的名称?


qq777 发表于:2015-12-09 17:16:03

不好意思我没说清楚,原代码是这样的

Private Sub Command1_Click()
DoCmd.RunSQL "UPDATE 期中考试 SET 期中考试.三总分 = [期中考试]![语文]+[期中考试]![数学]+[期中考试]![英语], 期中考试.三平均 = ([期中考试]![语文]+[期中考试]![数学]+[期中考试]![英语])/3;  ", -1
End Sub

可以计算指定的 表“期中考试”中的三总分,三平均


我想计算不同表(比如说表“期中考试”、表“期末考试”)中的的三总分,三平均这些表的结构基本相同

所以定义一个变量varA

当 varA = "期中考试"   时计算,表“期中考试”中的三总分,三平均

当  varA  = "期末考试"   时计算,表“期末考试”中的三总分,三平均

所以代码改成


Private Sub Command1_Click()

Dim varA As String
varA = "期中考试"

DoCmd.RunSQL "UPDATE varA SET varA.三总分 = [varA]![语文]+[varA]![数学]+[varA]![英语], varA.三平均 = ([varA]![语文]+[varA]![数学]+[varA]![英语])/3;  ", -1

End Sub



运行时出错,提示“。。。找不到表或查询varA”


错在哪里?怎么修改?


菜鸟初学,请多指教!



zhaoyoulong 发表于:2015-12-10 09:03:12

一个表就行了,大不了多个字段来区分考试类型!干嘛要那么多表?

如果非要这样,你可以试试:

DoCmd.RunSQL "UPDATE “ &  varA  & ” SET 三总分 = [语文]+[数学]+[英语], 三平均 = ([语文]+[数学]+[英语])/3;  ", -1



qq777 发表于:2015-12-14 16:43:46

多谢指教,我明白了




qq777 发表于:2015-12-14 16:43:59

多谢指教,我明白了




总记录:8篇  页次:1/1 9 1 :