Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
288to292
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
288to292
288to292
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

ListBox füllen

ListBox füllen
06.08.2003 14:08:36
Danny Meier
Hallo NG

Ich möchte gerne eine Logdatei auswerten.
Als ersten Schritt habe ich von den ganzen Daten eine trennung vorgenommen.

z.B. kommen alle ERRORs in eine Tabelle und alle ACCESS in eine Tabelle.
Nun habe ich noch ein UserForm kreiert, mit zwei Feldern. Einmal DatumVon und DatumBis
dazu gibt es zwei RadioButtons bei welcher man Einstellt ob nach ACCESS oder ERROR's gesucht werden soll.

Nun wie durchsuche ich am schnellsten die Tabelle und fülle gleich bei einem fund die ganze Zeile (später vielleicht auch nur
einzelne Spalten) in die ListBox ein?

Meine Variante dauert ewig lange, und ist nicht wirklich genau! Die Logs haben meistens um die 10'000 - 20'000 Tausend Zeilen!

Vielen Dank für die hilfe (Code weiter unten)

Danny Meier

------------------------------CODE------------------------------------------

Anzahl_Zeilen = Excel.Range(Selection, Selection.End(xlDown)).Count

Suche = TextBoxDatumVON.Text

ListBox.ColumnCount = 9: Zeile = 0
Zähler = 1
Do
Set Zelle = Range("A1:I65000").Find(What:=Suche)
If Not Zelle Is Nothing Then
ListBox.AddItem Range("A" & Zähler)
ListBox.List(Zeile, 1) = Range("B" & Zähler)
ListBox.List(Zeile, 2) = Range("C" & Zähler)
ListBox.List(Zeile, 3) = Range("D" & Zähler)
ListBox.List(Zeile, 4) = Range("E" & Zähler)
ListBox.List(Zeile, 5) = Range("F" & Zähler)
ListBox.List(Zeile, 6) = Range("G" & Zähler)
ListBox.List(Zeile, 7) = Range("H" & Zähler)
ListBox.List(Zeile, 8) = Range("I" & Zähler)
Zeile = Zeile + 1
Zähler = Zähler + 1
If Zähler > Anzahl_Zeilen Then Exit Do
Else
Exit Do
End If
Loop

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

Betreff
Datum
Anwender
Anzeige
Crossposting spotlight
06.08.2003 14:18:11
.
.


AW: sehr schlau.HA HA
06.08.2003 15:17:45
von
.


AW: ListBox füllen
06.08.2003 14:50:53
Ramses
Hallo Danny

die Anzahl Spalten ist ja anscheinend klar dann kannst du diese voreinstellen und auch die jeweilige Weite festlegen, dann gib doch nur den Bereich an den die Listbox darstellen soll:


Option Explicit

Private Sub CommandButton1_Click()
Dim von As Date, bis As Date
Dim row1 As String, row2 As String
Dim wks As Worksheet
Dim i As Integer
Set wks = Worksheets("Demo")
von = Format(DateValue(Me.TextBoxDatumVON.Value), "dd.mm.yyyy")
bis = Format(DateValue(Me.TextBoxDatumBIS.Value), "dd.mm.yyyy")
von = wks.Range("A1:A65536").Find(What:=von)
bis = wks.Range("A1:A65536").Find(What:=bis)
If Not IsEmpty(von) And Not IsEmpty(bis) Then
    Me.ListBox1.Clear
    For i = 1 To wks.Cells(65536, 1).End(xlUp).Row
        If wks.Cells(i, 1) = von Then
            row1 = wks.Cells(i, 1).Address
            Exit For
        End If
    Next i
    For i = 1 To wks.Cells(65536, 1).End(xlUp).Row
        If wks.Cells(i, 1) = bis Then
            row2 = wks.Cells(i, 9).Address
            Exit For
        End If
    Next i
   Me.ListBox1.RowSource = row1 & ":" & row2
Else
    MsgBox "Datum wurde nicht gefunden"
End If
Me.Repaint
End Sub 
     Code eingefügt mit Syntaxhighlighter 1.16



Der Variable WKS kannst du dann mit deinem OptionButton noch den Tabellennamen zuweisen den er verwenden soll zum suchen (Error oder Access)

Gruss Rainer


Anzeige
Ich sollte wirklich öfter aktualisieren :-) o.T.
06.08.2003 14:54:15
Ramses
...


Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige