Private Sub createSequenceDataFiles_Sequence(sPath As String, sTableName As String, iSeqNo As Integer)
Dim RST As DAO.Recordset
Dim nIL As Long, nLastIL As Long
Dim sSQL As String
'
' Get the data from the table
'
sSQL = _
" SELECT [「 & sTableName & 「].IL, 「 & _
「 [XL]-[FIRST_XL]+1 AS XL_IDX, 「 & _
「 [「 & sTableName & 「] 「 & _
「 FROM [「 & sTableName & 「] 「 & _
「 INNER JOIN TBL_FIRST_XL_FOR_IL 「 & _
「 ON [「 & sTableName & 「].IL = TBL_FIRST_XL_FOR_IL.IL 「 & _
「 ORDER BY [「 & sTableName & 」].IL, [XL]-[FIRST_XL]+1」
Set RST = CurrentDb.OpenRecordset(sSQL)
While Not RST.EOF
nIL = RST("IL").Value
If Not (nLastIL = nIL) Then
'
' If we've already done one, close the file
'
If nLastIL > 0 Then Close #1
'
' Open the file for the current in-line
'
Open sPath & "\WBS1\IL_" & Format(nIL, "0000") & ".pks" For Append As 1
End If
'
' Write the data
'
Write #1, iSeqNo, RST(「XL_IDX」).value + 1, RST("TIME").Value
nLastIL = nIL
RST.MoveNext
Wend
'
' Close
'
Set RST = Nothing
Close
End Sub
我收到此錯誤Visual Basic Access:參數太少。預計1
是不是有什麼問題呢?
這是整個代碼現在我很確定它是SQL位,這是問題,也許我的表名是錯誤的。
您確定導致錯誤的代碼嗎?你能發佈更多的代碼嗎?什麼是'sTableName'內容? – 2013-03-14 05:22:43
我不完全相信我已經添加了更多的代碼 – 2013-03-14 05:35:44
這裏是你的公式生成的SQL(使用「aTable」作爲表名):'SELECT [aTable] .IL,[XL] - [FIRST_XL ] +1 AS AS XL_IDX,** [aTable] ** FROM [aTable] INNER JOIN TBL_FIRST_XL_FOR_IL ON [aTable] .IL = TBL_FIRST_XL_FOR_IL.IL ORDER BY [aTable] .IL,** [XL] - [FIRST_XL] + 1 * *'。 「**」中的項目在語句中被引用爲字段,但它們不可以,對嗎? – chuff 2013-03-14 05:40:28