Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1840to1844
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

Frage zu einer Suchanfrage

Frage zu einer Suchanfrage
21.07.2021 15:29:46
Frank
Hallo Zusammen!
In TextBox steht immer ein Nachname, Vorname.
Mittels folgendem Code wird in der Tabelle gesucht:
Dim m, y, c As Byte
m = 51 'Spaltennummer variabel
y = ComboBox1.ListIndex * 5
c = m + y
Dim daten() As Variant, avntValues As Variant
Dim lng As Long, lngCount As Long
With Worksheets("Datenbestand")
avntValues = .Range(.Cells(5, c), .Cells(305, c + 5))
End With
With frmAufwandsentschädigung
.ListBox1.ColumnCount = 6
.ListBox1.ColumnWidths = "63;145;145;142;145;60"
.ListBox1.Clear
For lng = LBound(avntValues) To UBound(avntValues)
If avntValues(lng, 2) = TextBox1 And TextBox1 "" Then
lngCount = lngCount + 1
ReDim Preserve daten(0 To 16, 1 To lngCount)
daten(0, lngCount) = avntValues(lng, 1)
daten(1, lngCount) = avntValues(lng, 2)
daten(2, lngCount) = avntValues(lng, 3)
daten(3, lngCount) = avntValues(lng, 4)
daten(4, lngCount) = avntValues(lng, 5)
daten(5, lngCount) = lng + 4
End If
Next lng
On Error Resume Next
.ListBox1.Column = daten
End With
Aber wie muss mein Code verändert bzw. erweitert werden, wenn der Name aus TextBox1 nicht gefunden wurde, denn nun soll er noch prüfen ob ab Zeile 4 - 305 und den festen Spalten 190 - 194 (der dann zu suchende Name steht in Spalte 191) der Name zu finden ist.
Da fehlt mir das nötige Rüstzeug. Ich bitte nun um eure Hilfe und bedanke mich im Voraus.
L.G. Frank H.

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Frage zu einer Suchanfrage
21.07.2021 17:43:06
GerdL
Moin Frank,
zuletzt hatte dich offenbar einer hier abgeschreckt.
Ungetestet u. ohne große Veränderung der Struktur.

Sub Unit()
Dim m As Long, y As Long, c As Long
Dim daten() As Variant, avntValues As Variant
Dim lng As Long, lngCount As Long
m = 51 'Spaltennummer variabel
y = ComboBox1.ListIndex * 5
c = m + y
nochmal:
With Worksheets("Datenbestand")
avntValues = .Range(.Cells(5, c), .Cells(305, c + 5))
End With
For lng = LBound(avntValues) To UBound(avntValues)
If avntValues(lng, 2) = TextBox1 And TextBox1  "" Then
lngCount = lngCount + 1
ReDim Preserve daten(0 To 5, 1 To lngCount)
daten(0, lngCount) = avntValues(lng, 1)
daten(1, lngCount) = avntValues(lng, 2)
daten(2, lngCount) = avntValues(lng, 3)
daten(3, lngCount) = avntValues(lng, 4)
daten(4, lngCount) = avntValues(lng, 5)
daten(5, lngCount) = lng + 4
End If
Next lng
If lngCount = 0 And c  190 Then
Redim daten (0 To 5, 1 To 1)
c = 190
GoTo nochmal
End If
With frmAufwandsentschädigung
.ListBox1.ColumnCount = 6
.ListBox1.ColumnWidths = "63;145;145;142;145;60"
.ListBox1.Clear
.ListBox1.Column = daten
On Error Resume Next
.ListBox1.Column = daten
End With
End Sub
Ach ja, die alternative Prüfung soll doch von Spalte 190 bis 195 über 6 Splaten gehen, denke ich.
Gruß Gerd
Anzeige
AW: Frage zu einer Suchanfrage
21.07.2021 19:56:54
Frank
Hallo Gerd,
besten Dank. Funzt wie gewünscht.
Schönen Abend noch!
L.G. Frank H.
AW: Frage zu einer Suchanfrage
21.07.2021 17:52:01
ralf_b
Hallo Frank
Ich schlage vor nach der for schleife zu prüfen ob lngCount erhöht wurde. Wenn nicht, dann wurde auch nichts gefunden. Anschließend nochmal so eine For-Schleife oder per Formel z.b mit Application.match() den Bereich Cells(4,191).resize(305) nach dem Namen absuchen.
Da dir das Rüstzeug fehlt, hast du den gezeigten Code sicher auch nicht selbst geschrieben. Deshalb wäre eine gewisse Vorarbeit deinerseits. bzgl. Beispieldatei hochladen nett. Ich habs nämlich auch gern einfach.
gruß
rb
Anzeige
AW: Frage zu einer Suchanfrage
21.07.2021 20:01:44
Frank
Hallo Ralf,
auch dir Danke. Nehme den Code von Gerd, sorry.
Den Ursprungscode habe ich zwar nicht selbst geschrieben, da hast du Recht, aber ich konnte ihn anpassen und habe ihn zumindest zu fast 100% verstanden.
Auch dir einen schönen Abend.
L.G. Frank H.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige