Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
17.02.2021 09:40:24 |
staeme |
|
|
|
17.02.2021 10:19:09 |
Sigi |
|
|
|
17.02.2021 11:05:34 |
staeme |
|
|
|
17.02.2021 11:28:23 |
staeme |
|
|
|
17.02.2021 15:14:38 |
Sigi |
|
|
|
17.02.2021 15:49:00 |
staeme |
|
|
Vergleich eines Inputs mit Einträgen einer Liste |
17.02.2021 16:27:40 |
Sigi |
|
|
Von:
Sigi |
Datum:
17.02.2021 16:27:40 |
Views:
641 |
Rating:
|
Antwort:
|
Thema:
Vergleich eines Inputs mit Einträgen einer Liste |
Eine Variable vom Typ Integer oder Long hat 0, wenn kein Wert zugewiesen wurde (da dies Zahlen sind).
Hier was für dein Problem mit SQL, adaptiere es um probiers mal aus:
Public Sub readDataFromExcel()
Dim strCon As String
Dim strFile As String
Dim strSQL As String
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim anzahl As Long
Dim model As String
Dim einheit As Long
Dim farbe As String
Dim standort As String
strFile = "c:\users\schw276\Desktop\dta.xls" ' hier gib den Pfad deiner Liste an: I:\Domenic Stamm\Verkaufslisten\Verkaufsliste.xlsm
strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFile & ";Extended Properties=""Excel 12.0;HDR=yes"";"
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
cn.Open strCon
'anzahl = InputBox("Anzahl")
'einheit = InputBox("Einheit")
'model = InputBox("Model")
'farbe = InputBox("Farbe")
marke = "Finn Comfort"
standort = "Aarau" 'InputBox("Standort")
strSQL = "SELECT * FROM [Tabelle2$] where marke = '" & marke & "' and standort = '" & standort & "'"
rs.CursorType = adOpenKeyset
'rs.CursorLocation = adUseServer
rs.LockType = adLockOptimistic
rs.Open strSQL, cn
If Not rs Is Nothing Then
If rs.BOF And rs.EOF Then 'nichts gefunden; somit nicht vorhanden; lege neu an
rs.AddNew
rs.Fields("Anzahl") = 1
rs.Fields(1) = "neue"
rs.Update
Else
'gefunden
While Not rs.EOF
Debug.Print rs.Fields("Standort") & " " & rs.Fields("Marke") 'Spaltenname verwenden
rs.Fields(0) = rs.Fields("Anzahl").Value + 1 'erhöhe um 1
rs.Update
'würde auch gehen...
'Call cn.Execute("Update [Tabelle2$] set anzahl = " & rs.Fields("Anzahl").Value + 1 & " where marke = 'Finn Comfort' and standort = 'Aarau'")
rs.MoveNext
Wend
End If
rs.Close
Set rs = Nothing
End If
Set cn = Nothing
End Sub
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
17.02.2021 09:40:24 |
staeme |
|
|
|
17.02.2021 10:19:09 |
Sigi |
|
|
|
17.02.2021 11:05:34 |
staeme |
|
|
|
17.02.2021 11:28:23 |
staeme |
|
|
|
17.02.2021 15:14:38 |
Sigi |
|
|
|
17.02.2021 15:49:00 |
staeme |
|
|
Vergleich eines Inputs mit Einträgen einer Liste |
17.02.2021 16:27:40 |
Sigi |
|
|