1
제목에 업데이트 문 내에서 VBA 변수를 사용하려고합니다. 이것은 범위의 각 셀을 반복하고 해당 반복 셀 참조에 해당하는 테이블 내의 값에서 워크 시트의 값을 뺀 것이기 때문에 사용됩니다. 그러나 명령문에 "너무 많은 괄호가 있습니다."라는 오류가 발생합니다. 그러나 이것은 이상한 일입니다. b/c 나는 SQL 구문을 직접 액세스하지 못하게했습니다. 뭔가 놓친 거 같아? VBA 변수를Access UPDATE 문에서 VBA 변수를 사용하려고 시도했습니다.
코드 : 변수없이
Private Sub UPDIZZLE()
Dim rCell As Range
Dim rRng As Range
Dim con As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strConnection As String
Dim QUV As Long
Dim IID As String
Set rRng = ActiveWorkbook.Sheets("Sheet1").Range("b2:b100")
For Each rCell In rRng.Cells
If rCell <> "" And rCell.Value <> 0 Then
IID = rCell
QUV = rCell.Offset(0,x).Value
strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Ashleysaurus\Desktop" & "\" & "xyzmanu3.accdb"
con.Open strConnection
rs.Open "UPDATE Stuff SET Stuff.Quantity = Quantity-" & QUV & " WHERE (((Stuff.[ItemID])=" & IID & "));", con
con.Close
End If
Next rCell
End Sub
코드 : 나는 코드의 두 버전 게시 할 예정 문자열이 아닌 그것이 있어야 IID
으로
strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Ashleysaurus\Desktop" & "\" & "xyzmanu3.accdb"
con.Open strConnection
rs.Open "UPDATE Stuff SET Stuff.Quantity = Quantity-1 WHERE (((Stuff.[ItemID])=Thingamagig));", con
con.Close
'IID' 값 자체에 괄호가 들어있을 수 있습니까? – RGA
'IID'는'rs.Open '문자열이 아니어야합니다. UPDATE Stuff SET Stuff.Quantity = Quantity- "& QUV &"WHERE ((항목 ([ItemID]) =' "& IID & "'));" ('IID'를 둘러싼 작은 따옴표) –
당신은 내가 멍청한 멍청한 실수를 저질렀다는 것을 알고 있습니다. 다시 시도해보고 다시 게시하십시오. –