Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1660to1664
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA zwei Spalten nach gegebenen Werten durchsuchen

VBA zwei Spalten nach gegebenen Werten durchsuchen
18.12.2018 13:52:19
Sam
Hallo zusammen!
Ich habe da ein Problem bei dem ich mich immer wieder im Kreis drehe, und bräuchte mal die Schwarmintelligenz!
Folgendes:
Ich habe in einer Userform (unter anderem) eine TextBox9 in er ein Datum eingetragen wird und eine ComboBox2 aus der ein Produkt ausgewählt wird.
Durch Drücken von CommandButton1 soll folgendes ausgelöst werden:
- eine ANDERE Datei ("Datei x") wird geöffnet.
- Auf Tabellenblatt1, In Spalte A soll nach dem Datum aus TextBox1 gesucht werden.
- Ist das Datum vorhanden, soll abgeglichen werden, ob der Wert in der gleichen Zeile in Spalte B mit ComboBox2 übereinstimmt.
- Tut er dies soll die Zeile für weitere Aktionen unter „lngZeile“ gespeichert
Werden (bspw: If CheckBox21.Value = True Then: .Cells(lngZeile, 17).Value =
TextBox74.Value)
- Tut er dies NICHT, soll weiter nach einer anderen Übereinstimmung gesucht
werden. Wird keine weitere gefunden, soll in die erste freie Spalte beide Werte
neu eingetragen werden. (nun soll das Programm wieder zum Anfang
springen, so dass „lngZeile“ gesetzt wird.)
- Ist das Datum noch nicht vorhanden, sollen ebenfalls in die erste freie Spalte beide Werte neu eingetragen werden und das Programm wieder zum Anfang springen.
Folgenden Ansatz habe ich mir zusammen gebastelt, komme allerdings damit nicht weiter, da entweder „lngZeile“ als 0/nicht vorhanden erkannt wird, oder das Programm scheinbar in der Schleife festhängt und sich gar nichts mehr tut…
Unten mal mein Code… Vielleicht kann mir jemand von euch helfen?
Vielen Dank schon einmal vorab!
Gruß Sam
Private Sub CommandButton1_Click()
Workbooks.Open Filename:=\\Pfad\..\Datei x.xlsx
Dim rng As Range
Dim lngZeile As Long
Call GELabor
Workbooks("Datei x.xlsx").Close SaveChanges:=True
MsgBox ("Daten übertragen!")
End Sub
Sub GELabor()
Dim rngDate As Range
Dim datAdresse As String
With Workbooks("Datei x.xlsx").Sheets("Tabelle1")
Do
Set rngDate = .Columns(1).Find(What:=TextBox9.Value, LookIn:=xlValues, LookAt:=xlPart)
If rngDate Is Nothing Then
.Range("a1").End(xlDown).Offset(1, 0) = TextBox9.Value
.Range("b1").End(xlDown).Offset(1, 0) = ComboBox2.Value
ElseIf Not rngDate Is Nothing Then
datAdresse = rngDate.Address
If rngDate.Offset(0, 1) = ComboBox2.Value Then
lngZeile = rngDate.Row
Exit Do
Else
Set rngDate = .Columns.FindNext(after:=rngDate)
If rngDate.Address = datAdresse Then
.Range("a1").End(xlDown).Offset(1, 0) = TextBox9.Value
.Range("b1").End(xlDown).Offset(1, 0) = ComboBox2.Value
ElseIf rngDate.Offset(0, 1) = ComboBox2.Value Then
lngZeile = rngDate.Row
Exit Do
End If
End If
End If
Loop
(weitere Aktionen mit „lngZeile“ für die jeweilige Zeile)
End With
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA zwei Spalten nach gegebenen Werten durchsuchen
18.12.2018 16:01:03
Sam
Oder hat vielleicht jemand eine alternativen Lösungsansatz? Freue mich über jede Hilfe!
AW: VBA zwei Spalten nach gegebenen Werten durchsuchen
18.12.2018 16:03:44
Rudi
Hallo,
da ist der erste Fehler:
Set rngDate = .Columns(1).Find(What:=TextBox9.Value, LookIn:=xlValues, LookAt:=xlPart)

Eine TextBox enthält Text und kein Datum.
Versuchs mit
Set rngDate = .Columns(1).Find(What:=CDate(TextBox9.Value), LookIn:=xlValues, LookAt:=xlPart)

Gruß
Rudi
AW: VBA zwei Spalten nach gegebenen Werten durchsuchen
18.12.2018 16:34:42
Sam
Hallo Rudi,
erst mal danke für deine Rückmeldung!
Zur Erklärung: Für meine Zwecke ist es irrelevant ob das Datum als Text oder als Datum behandelt wird.
In anderen Subs dieser Userform hat die Suche nur nach dem Datum (bzw. dem Text...) super funktioniert.
Was mir hier Probleme bereitet ist die Schleife die ich brauche um auch Spalte B abzufragen...
Da kommt das Programm nicht mehr raus.
(Ich habe allerdings deinen Vorschlag auch mal getestet - Problem besteht immer noch!)
Gruß Sam
Anzeige
Solange du hier nicht die Datei postest...
19.12.2018 17:27:55
onur
Solange du hier nicht die Datei postest, wird dir wohl niemand helfen können!
AW: Solange du hier nicht die Datei postest...
22.12.2018 13:24:05
Hajo_zi
dem kann man nur zustimmen.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige