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

Musikliste mit Userform & Optionsfelder

Musikliste mit Userform & Optionsfelder
Stephan
Hallo und guten Tag,
Ich habe eine Musikliste erstellt und möchte wahlweise nach Interpret oder Titel suchen mithilfe einer Userform und Optionsfelder.
Die Interpreten sind alle in der Spalte A und die Titel in Spalte B.
Wenn nun das Optionsfeld für den Interpreten angeklickt und gesucht wird soll folgendes in einer ListBox erscheinen: Interpret - Titel
Wenn das Optionsfeld für den Titel angeklickt und auf Suche geklickt wird soll
es so aussehen: Titel - Interpret. Also genau andersherum.
Die Userform ist soweit fertig und die Suche die ich im moment nutze ist nicht
so wie ichs mir vorstelle: man gibt die ersten Buchstaben ein und es wird gleich aufgelistet, egal ob Interpret oder Titel.
Kann mir jemand damit behilflich sein?
P.S.: Bei Unklarheiten kann ich auch die Mappe hochladen.
und Daten Maske willst Du nict nutzen ...
19.01.2011 14:47:36
Matthias
Hallo
Excel bietet Dir doch schon eine Suchmaske
Userbild
Gruß Matthias
AW: Musikliste mit Userform & Optionsfelder
19.01.2011 15:07:20
Tino
Hallo,
könnte in etwa so gehen.
Private Sub OptionButton1_Click()
    Call Find_Musik
End Sub

Private Sub OptionButton2_Click()
    Call Find_Musik
End Sub

Private Sub TextBox1_Change()
    Call Find_Musik
End Sub

Sub Find_Musik()
Dim ArrayData(), NewArray()
Dim A As Long, nCount As Long, ArSpalte(1) As Long

ArSpalte(0) = IIf(OptionButton1, 1, 2)
ArSpalte(1) = IIf(ArSpalte(0) = 1, 2, 1)

With Tabelle1
    ArrayData = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp)).Resize(, 2).Value2
End With

Redim Preserve NewArray(1 To 2, Lbound(ArrayData) To Ubound(ArrayData))

For A = 1 To Ubound(ArrayData)
    If Mid$(ArrayData(A, ArSpalte(0)), 1, Len(TextBox1)) = TextBox1 Then
        nCount = nCount + 1
        NewArray(1, nCount) = ArrayData(A, ArSpalte(0))
        NewArray(2, nCount) = ArrayData(A, ArSpalte(1))
    End If
Next A

With ListBox1
    .Clear
    .ColumnCount = 2
    If nCount > 0 Then
        .List = Application.Transpose(NewArray)
    End If
End With
End Sub
Gruß Tino
Anzeige
AW: Musikliste mit Userform & Optionsfelder
19.01.2011 15:45:48
Stephan
Ich werde mal die Datei hochladen, da ich leider nicht viel VBA Kenntnisse habe und daher nicht weiß
wo ich was einfügen muss.
https://www.herber.de/cgi-bin/forum/call_forum.pl
AW: Musikliste mit Userform & Optionsfelder
19.01.2011 15:47:30
Stephan
Ich werde mal die Datei hochladen, da ich leider nicht viel VBA Kenntnisse habe und daher nicht
weiß wo ich was einfügen muss.
https://www.herber.de/bbs/user/73149.xlsm
AW: Musikliste mit Userform & Optionsfelder
19.01.2011 16:05:54
Tino
Hallo,
hier zwei Varianten
Erste, da muss der Text von Anfang an richtig eingegeben werden.
https://www.herber.de/bbs/user/73150.xlsm
Zweite Variante mit Like Operator, hier kannst Du mit Platzhalter arbeiten.
Beispiel:
*pr* findet alles was pr enthält.
pr* findet alles was mit pr anfängt
*pr findet alles was mit pr endet
Kann man auch in der Hilfe nachlesen Like (Operator)
https://www.herber.de/bbs/user/73151.xlsm
Gruß Tino
Anzeige
AW: Musikliste mit Userform & Optionsfelder
19.01.2011 16:18:05
Stephan
Hey!!!!
Danke, Danke, Danke!!!!!
Das Erste Beispiel ist genau das was ich gesucht hab!!!
Die einzige Besonderheit ist, dass man den Anfangsbuchstaben groß schreiben muss. Wie kommt
das zustande?
AW: Musikliste mit Userform & Optionsfelder
19.01.2011 16:38:57
Tino
Hallo,
wenn du das so nicht willst, ersetze diese Zeile
If Mid$(ArrayData(A, ArSpalte(0)), 1, Len(TextBox1)) = TextBox1 Then
durch diese
If LCase(Mid$(ArrayData(A, ArSpalte(0)), 1, Len(TextBox1))) = LCase(TextBox1) Then
Gruß Tino
AW: Musikliste mit Userform & Optionsfelder
19.01.2011 16:49:47
Stephan
Ok, funktioniert bestens!!!!
Dies sollte aber keine Aufforderung sein dies zu ändern. Ich wollte nur mal so fragen welche Zeile
im Code dafür verantwortlich ist damit ich verstehe warum das so ist.
Ich hoffe es hat keine all zu große Mühe gemacht, denn immerhin kann ich nichts weiter tun
als mich herzlich bei dir zu bedanken!!!!!
Anzeige
danke für die Rückmeldung oT.
19.01.2011 17:23:07
Tino

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige