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

Nochmal Listbox

Nochmal Listbox
22.09.2003 19:35:49
AxelW
Hallo Chris,

danke für Deine Idee von eben, aber ich bekomme eine Fehlermeldung (Laufzeitfehler: 13 "Typen unverträglich").
Die VBA-Zeile "lngArr = Application.WorksheetFunction.CountIf(.Range("A1:A200"), SuchZelle)" scheint diesen Fehler zu verursachen.
Leider schaffe ich es nicht diesen String zu zerlegen.
Ich habe den Code in das Initialize-Ereignis der Userform gelegt. Ist doch richtig, oder ???

Hast Du noch einen Tipp?
Gruß, Axel

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

Betreff
Datum
Anwender
Anzeige
AW: Nochmal Listbox
22.09.2003 19:47:55
andre
hallo axel,
kann es auch eins drüber sein? - die zeile, nicht der kopf. also suchzelle wird als long dimensioniert - also numerisch - und dann mit ..="x" belegt.
gruss andre
AW: Nochmal Listbox
22.09.2003 20:07:08
AxelW
Hallo Andre,

Naja, "SuchZelle" ist ja als LONG dimensioniert.
Hier nochmal der gesamte Code von Chris. Ich verstehe Leider nicht alle Zeilen. Die Verarbeitung in einem ARRAY ja, aber die "Suchfunktion" leider nicht ganz.
Diesen Code habe ich im INITIALIZE-Ereignis der Userform verwendet.

Gruss, Axel


Sub suchen()
Dim i As Integer
Dim lngArr As Integer
Dim SuchZelle As Long
Application.ScreenUpdating = False
SuchZelle = "x"
With Worksheets("Tabelle1")
lngArr = Application.WorksheetFunction.CountIf(.Range("A1:A200"), SuchZelle)
If lngArr = 0 Then
MsgBox "Keine Einträge gemäss den ausgewählten Kriterien"
Exit Sub
End If
ReDim MyArray(1 To lngArr, 0 To 3)
lngArr = 0
For i = 1 To 200
If .Cells(i, 1) = SuchZelle Then
lngArr = lngArr + 1
MyArray(lngArr, 0) = .Cells(i, 2)
MyArray(lngArr, 1) = .Cells(i, 3)
MyArray(lngArr, 2) = .Cells(i, 4)
MyArray(lngArr, 3) = .Cells(i, 5)
MyArray(lngArr, 4) = .Cells(i, 6)
End If
Next i
UserForm1.ListBox1.ColumnCount = 5
UserForm1.ListBox1.List = MyArray
End With
End Sub

Anzeige
AW: Nochmal Listbox
22.09.2003 21:01:13
ChrisL
https://www.herber.de/forum/messages/313421.html

Hi Axel

Die Variable-Deklaration muss wie folgt lauten...
Dim SuchZelle As String

Aber wie im alten Beitrag beschrieben, habe ich noch einen anderen Fehler entdeckt, sorry. Dafür hab ich es inzwischen getestet und gemäss nachstehendem Code sollte es funktionieren.

Gruss
Chris

Option Explicit


Sub suchen()
Dim i As Integer
Dim lngArr As Integer
Dim SuchZelle As String
Application.ScreenUpdating = False
SuchZelle = "x"
With Worksheets("Tabelle1")
lngArr = Application.WorksheetFunction.CountIf(.Range("A1:A200"), SuchZelle)
If lngArr = 0 Then
MsgBox "Keine Einträge gemäss den ausgewählten Kriterien"
Exit Sub
End If
ReDim MyArray(1 To lngArr, 0 To 4)
lngArr = 0
For i = 1 To 200
If .Cells(i, 1) = SuchZelle Then
lngArr = lngArr + 1
MyArray(lngArr, 0) = .Cells(i, 2)
MyArray(lngArr, 1) = .Cells(i, 3)
MyArray(lngArr, 2) = .Cells(i, 4)
MyArray(lngArr, 3) = .Cells(i, 5)
MyArray(lngArr, 4) = .Cells(i, 6)
End If
Next i
UserForm1.ListBox1.ColumnCount = 5
UserForm1.ListBox1.List = MyArray
End With
End Sub

Anzeige
AW: Nochmal Listbox
22.09.2003 21:06:55
AxelW
Hallo Chris,

Danke Dir fürs dranbleiben.
Wahnsinn, hab`s probiert und klappt super.

Noch einmal vielen Dank,

Gruss, Axel :)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige