Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA update mehrerer Spalten SQL
02.05.2018 13:18:55
Lx177
Hallo liebes Forum,
Ich hoffe mal wieder auf eure Hilfe.
Ich habe folgendes vor: Ich möchte aus einer Excel-Datei per VBA Änderungen auf einem SQL Server durchführen.
Dazu habe ich folgenden Code, der soweit auch funktioniert. Der Code ändert allerdings bisher _
nur eine Spalte, die explizit benannt wurde [ABC] über die Update-Funktion.

Private Sub CommandButton1_Click()
Dim sqlstr As String
Dim i As Integer
Dim a As Integer
Dim b As String
Dim LetzteZeile As Long
LetzteZeile = Tabelle1.Cells(Rows.Count, 1).End(xlUp).Row
Call connectDatabase
For i = 5 To LetzteZeile
If Tabelle1.Cells(i, 2).Value = "OK" Then
a = Tabelle1.Cells(i, 5).Value
sqlstr = "UPDATE PLS_VDS_RD_Ex_test SET  [ABC] = '" & a & _
"' WHERE GUID_DEBIT ='" & Tabelle1.Cells(i, 1).Value & "'"
DBCONT.Execute sqlstr
End If
'Next j
Next i
Call closeDatabase
MsgBox "Data was uploaded successfully."
End Sub

Nun möchste ich aber mehrere Spalten ändern und dabei nicht folgende Art und Weise verwenden:

Private Sub CommandButton1_Click()
Dim sqlstr As String
Dim i As Integer
Dim a As Integer
Dim b As String
Dim LetzteZeile As Long
LetzteZeile = Tabelle1.Cells(Rows.Count, 1).End(xlUp).Row
Call connectDatabase
For i = 5 To LetzteZeile
If Tabelle1.Cells(i, 2).Value = "OK" Then
a = Tabelle1.Cells(i, 5).Value
b = Tabelle1.Cells(i, 6).Value
c = Tabelle1.Cells(i, 7).Value
d = Tabelle1.Cells(i, 8).Value
e = Tabelle1.Cells(i, 9).Value
sqlstr = "UPDATE PLS_VDS_RD_Ex_test SET  [ABC] = '" & a & "', [BCD] = '" & b & "', [CDE] = '" &  _
_
_
_
c & "', [EFG] = '" & d & _
"', [FGH] = '" & e &  _
"' WHERE GUID_DEBIT ='" & Tabelle1.Cells(i, 1).Value & "'"
DBCONT.Execute sqlstr
End If
'Next j
Next i
Call closeDatabase
MsgBox "Data was uploaded successfully."
End Sub
Weiß jemand dazu einen Rat?
Viele Grüße
Lx177

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA update mehrerer Spalten SQL
02.05.2018 17:05:59
Luschi
Hallo Lx177,
da kannst Du nicht viel ändern, denn die SQL-Syntax von SQL-UPDATE ist nun mal so wie sie ist.
Ich würde den Zusammenbau des Sql-Strings 'sqlstr' in eine Function auslagern und dieser die erforderlichen Parameter übergeben aber um die geforderte Syntax kommst Du nicht herum, schließlich muß die Datenbank den SQL-Code verstehen und umsetzen und nicht Excel.
Gruß von Luschi
aus klein-Paris
Anzeige

344 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige