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

Kann man das zusammenfassen

Kann man das zusammenfassen
12.02.2009 13:25:00
Specke
Hallo Experten,
ich habe folgenden Code:

Sub ListeAlle_fuellen()
lstAlle.Clear
For i = 2 To intLetzteZeile
tmpArr = Split(wsWerte.Cells(i, 3), ",")
If UBound(tmpArr)  -1 Then
For j = 0 To UBound(tmpArr)
If Trim(tmpArr(j)) = Me.CmbGruppierung.Text Or Me.CmbGruppierung.Text = "" Then
If InStr(1, UCase(wsWerte.Range("A" & i).Value), UCase(TxtSuchwort.Text)) Then
lstAlle.AddItem wsWerte.Cells(i, 1)
End If
End If
Next j
Erase tmpArr
Else
If Me.CmbGruppierung.Text = "" Then
If InStr(1, UCase(wsWerte.Range("A" & i).Value), UCase(TxtSuchwort.Text)) Then
lstAlle.AddItem wsWerte.Cells(i, 1)
End If
End If
End If
Next i
End Sub


Dieser schaut in Spalte C nach Gruppen, die mit Komma getrennt sind und füllt eine Listbox mit allen Werten aus Spalte A, die einer evtl. gewählten Gruppe angehören und/oder einen Suchstring enthalten.
Wenn in einer Zeile in Spalte C nichts steht, macht er in der Schleife For j = 0 To UBound(tmpArr) nichts (klar, gibt ja kein Array), deshalb habe ich eine weitere Schleife If UBound(tmpArr) -1 drum herum gelegt.
Kann man das einfacher lösen?
Danke und Gruß
Specke

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

Betreff
Datum
Anwender
Anzeige
Verwunderlich, woher -1 kommt,...
12.02.2009 14:45:00
Luc:-?
...Specke!
Split liefert bei nicht enthaltenem Delimiter (hier Komma) entweder einen einzelnen Wert als Feld oder evtl einen Fehler. Wenn du generell nichts anderes eingestellt hast, ist der 1.Index dann 0 und LBound=UBounf ebenfalls 0. Das würde dann also genau 1x durch die For...To...Next-Schleife laufen. Wenn das nicht gewünscht ist, würde ich das schon vor dem Split mit Instr abfangen.
Gruß Luc :-?
Besser informiert sein!
AW: Verwunderlich, woher -1 kommt,...
12.02.2009 15:06:00
Specke
Hallo Luc,
wenn nur ein Wert in Spalte C steht läuft er auch nur einmal durch die Schleife, so wie Du sagts. Wenn aber gar nichts in Spalte C steht, liefert Split(wsWerte.Cells(i, 3), ",") -1 und dann geht er eben nicht in die Schleife.
Gruß Specke
Anzeige
Aha, dann ist's doch ok! Oder...? ;-) Gruß owT
12.02.2009 15:09:00
Luc:-?
:-?
es funktioniert, aber...
12.02.2009 15:43:00
Specke
ich dachte es geht geschickter.
Gruß Specke

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige