首页 > 解决方案 > Access VBA 中的转换查询

问题描述

我在 Access 中编写了 VBA 代码。但是,我在 TRANSFORM 语句中收到语法错误。如果您能帮助我,我将不胜感激。

Sub TransformX1()
    Dim dbs As Database
    Dim strSQL As String
    Set dbs = CurrentDb
    strSQL = "TRANSFORM Sum(BAR1.[TON]) AS SumOfTON" _
             & "SELECT BAR1.[MABD],Sum(BAR1.[TON]) AS [Total Of TON]" _
             & "FROM BAR1" _
             & "WHERE (((BAR1.[MABD]) < 1300) And ((BAR1.[MAGH]) < 1300) And ((BAR1.G) = 1))" _
             & "GROUP BY BAR1.[MABD]" _
             & "PIVOT BAR1.[MAGH]"
    DoCmd.RunSQL strSQL
End Sub

标签: vbams-access

解决方案


如果在 RunSQL 命令之前检查 strSQL 变量,您会发现缺少一些空格。代替

"TRANSFORM Sum(BAR1.[TON]) AS SumOfTON" _

"TRANSFORM Sum(BAR1.[TON]) AS SumOfTON " _

等等。


推荐阅读