Hi,
leider wird mr hier zwar ein Datensatz erstellt, aber keine Daten eingetragen obwohl die variablen gefüllt werden, frage warum:
Hier der Code:
Sub dbeintrag()
Dim Kunde As String
Dim Auftrag As String
Dim sachbearbeiter As String
Dim verkäufer As String
Dim order_nr As String
Dim customer_name As String
Dim order_status As String
Dim user_id As String
Dim order_ctime As String
Dim order_delivery_end As String
Dim order_delivery_place As String
Dim order_working_title As String
Kunde = Sheets("Expedio").Cells(2, 2)
Auftrag = Sheets("Expedio").Cells(1, 2)
sachbearbeiter = Sheets("Expedio").Cells(1, 24)
verkäufer = Sheets("Expedio").Cells(9, 2)
Dim oConn As ADODB.Connection
Set oConn = New ADODB.Connection
Dim oRS As Recordset
Set oRS = New ADODB.Recordset
oConn.Open "Provider=MSDASQL;DSN=myODBC"
'ermitteln der user_id
oRS.Open "SELECT user_id, user_name FROM fusion_users where user_name = '" & _
verkäufer & "'", oConn
If oRS.RecordCount <> 0 Then
Sheets("Expedio").Cells(4, 2) = oRS("user_id")
End If
oRS.Close
'prüfen ob auftrag vorhanden, wenn nicht dann anlegen
oRS.Open "SELECT order_nr FROM fusion_awtz_order where order_nr = '" & Auftrag _
& "'", oConn
If oRS.RecordCount > 0 Then
MsgBox "Auftragsnummer " & Auftrag & " bereits vorhanden !"
Exit Sub
Else
If Sheets("Expedio").Cells(1, 2) = "" Then
MsgBox "Keine Auftragsnummer eingetragen"
oRS.Close
Exit Sub
End If
order_nr = Sheets("Expedio").Cells(1, 2)
customer_name = Sheets("Expedio").Cells(2, 2)
order_status = Sheets("Expedio").Cells(3, 2)
user_id = Sheets("Expedio").Cells(4, 2)
order_ctime = Sheets("Expedio").Cells(5, 2)
order_delivery_end = Sheets("Expedio").Cells(6, 2)
order_delivery_place = Sheets("Expedio").Cells(7, 2)
order_working_title = Sheets("Expedio").Cells(8, 2)
Dim sqlstring As String
sqlstring = "INSERT INTO fusion_awtz_order (order_nr, customer_name," & _
"order_status, user_id, order_ctime, order_delivery_end," & _
"order_delivery_place, order_working_title) VALUES (order_nr, customer_name," & _
"order_status, user_id, order_ctime, order_delivery_end," & _
"order_delivery_place, order_working_title)"
oConn.Execute sqlstring
MsgBox "Auftrag im Tageszettel erstellt !"
End If
End Sub Ich will noch erwähnen das ich die daten aus excel VBA schicke
Grüsse mike |