각 WS를 반복하고 각 데이터 집합의 상위 4 개 행을 삽입하도록 설계된이 VBA는 아래에 있습니다..Cells VBA 참조 문제
이 코드는 with의 내부에서 잘 작동하지만, 모든 코드를 처리하는 대신 하나의 시트 만 지정할 수 있습니다. 나는 그걸 가지고 나가서 "유효하지 않거나 부적합한 참조"를 얻었다. 이 후 ActiveSheet를 추가했습니다. '세포'방법.
지금 나는 아래이 오류를 받고 있어요 :어떻게 .Cells 지금 자격 않는
을 "ODBC 드라이버가 요청한 속성을 지원하지 않습니다"? 아니면 대안이 있습니까? 나는 2010 및 mysql을 사용하고 있습니다.
Public Function InsertData()
Dim rs As ADODB.Recordset
Dim oConn As ADODB.Connection
Dim WS As Worksheet
Dim strsql As String
Set rs = New ADODB.Recordset
Set oConn = New ADODB.Connection
oConn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & _
"SERVER=server.host.com;" & _
"DATABASE=datatime;" & _
"USER=boulders;" & _
"PASSWORD=rocks;" & _
"Option=3"
For Each WS In ActiveWorkbook.Worksheets
For rowcursor = 4 To 8
strsql = "INSERT INTO workflow_metrics (id, code) " & _
"VALUES (" & (ActiveSheet.Cells(rowcursor, 1)) & "," & _
"'" & (ActiveSheet.Cells(rowcursor, 2)) & "')"
rs.Open strsql, oConn, adOpenDynamic, adLockOptimistic
Next
Next WS
End Function
+1 ActiveSheet.Cells 대신 'WS'가 맞지만 'ODBC 드라이버가 요청한 속성을 지원하지 않습니다.' –
ActiveSheet를 스왑했습니다. . WS를 위해. 그리고 그것은 잘 작동합니다! – JoshG
@ConradFrix, 나는 그것이 ODBC 오류를 고칠 수 있을지 모르겠다. –