Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1020to1024
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

ComboBox mit Sheets

ComboBox mit Sheets
29.10.2008 09:39:00
Frank
Guten Morgen,
ich habe folgendes File dank dem Forum zusammengestellt bekommen
nun möchte ich noch über die ComboBox die Tabellen auswählen.
https://www.herber.de/bbs/user/56367.xls
Meine Frage:
Wie bekomme ich die Sheets in der ComboBox angezeigt und nach
Auswahl eines Sheets, dieses sich auf das Suchergebnis bezieht.
Leider bin ich noch ein ziemlicher Neuling in VBA
Wäre Super wenn ich von Euch eine einfache Lösung bekommen könnte.
Viele Grüsse
Frank

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ComboBox mit Sheets
29.10.2008 10:03:00
Ingo
Hallo Frank,
in das Modul der Userforn:

Private Sub UserForm_Initialize()
Dim wsh As Worksheet
Me.ComboBox1.Clear
For Each wsh In ThisWorkbook.Worksheets
Me.ComboBox1.AddItem wsh.Name
Next wsh
End Sub



Private Sub ComboBox1_Click()
Dim wsh_name As String
wsh_name = Me.ComboBox1
Unload Me
ThisWorkbook.Worksheets(wsh_name).Activate
End Sub


mfg
Ingo Christiansen

AW: ComboBox mit Sheets
29.10.2008 10:12:00
Frank
Hallo Ingo,
vielen Dank für deine schnelle Antwort,
nun kann ich zwar über die ComboBox zu einem ausgewählten Tabellenblatt springen
was ich aber nicht möchte, sondern ein Sheet über die ComboBox auswählen
und dann in der Userform einen Artikel aus diesem anzeigen lassen.
Vielen Dank
Frank
Anzeige
AW: ComboBox mit Sheets
29.10.2008 10:44:00
Ingo
So sollte es jetzt gehen:
Dim wsh_name As String

Private Sub UserForm_Initialize()
Dim wsh As Worksheet
Me.ComboBox1.Clear
For Each wsh In ThisWorkbook.Worksheets
Me.ComboBox1.AddItem wsh.Name
Next wsh
End Sub



Private Sub ComboBox1_Click()
Dim l_row As Long
Dim i_row As Integer
wsh_name = Me.ComboBox1
l_row = ThisWorkbook.Sheets(wsh_name).Range("B" & Rows.Count).End(xlUp).Row
Me.cboBezeichnung.Clear
Me.cboArtikelNr.Clear
For i_row = 5 To l_row
Me.cboArtikelNr.AddItem ThisWorkbook.Sheets(wsh_name).Cells(i_row, 2)
Me.cboBezeichnung.AddItem ThisWorkbook.Sheets(wsh_name).Cells(i_row, 3)
Next i_row
End Sub



Private Sub cboArtikelNr_Click()
Dim rng As Range
Me.txtLagerbestand = ""
Set rng = ThisWorkbook.Sheets(wsh_name).Range("B:B").Find(Me.cboArtikelNr, LookIn:=xlValues,  _
lookat:=xlWhole)
If Not rng Is Nothing Then
Me.txtLagerbestand = rng.Offset(0, 2)
End If
End Sub



Private Sub cboBezeichnung_Click()
Dim rng As Range
Me.txtLagerbestand = ""
Set rng = ThisWorkbook.Sheets(wsh_name).Range("C:C").Find(Me.cboBezeichnung, LookIn:=xlValues,  _
lookat:=xlWhole)
If Not rng Is Nothing Then
Me.txtLagerbestand = rng.Offset(0, 1)
End If
End Sub


Bei Auswahl einer Tabelle werden die Comboboxen artikelnr und Bezeichnung gefüllt und bei Auswahl aus einer dieser Comboboxen das Textfeld Lagerbestände
mfG
Ingo Christiansen

Anzeige
AW: ComboBox mit Sheets
29.10.2008 11:02:00
Frank
Hi Ingo,
Super fast perfekt,
nur noch eines.
Wenn ich die Artikelnummer auswähle wird mir der Lagerbestand korrekt wiedergegeben
leider bleibt aber die Bezeichnung leer,
wenn ich die Bezeichnung auswähle wird leider die Artikelnummer nicht angezeigt.
Kann du mir dieses Problem noch lösen.
Gruss
Frank
AW: ComboBox mit Sheets
29.10.2008 12:04:00
Ingo
Dim wsh_name As String

Private Sub UserForm_Initialize()
Dim wsh As Worksheet
Me.ComboBox1.Clear
For Each wsh In ThisWorkbook.Worksheets
Me.ComboBox1.AddItem wsh.Name
Next wsh
End Sub



Private Sub ComboBox1_Click()
Dim l_row As Long
Dim i_row As Integer
wsh_name = Me.ComboBox1
l_row = ThisWorkbook.Sheets(wsh_name).Range("B" & Rows.Count).End(xlUp).Row
Me.cboBezeichnung.Clear
Me.cboArtikelNr.Clear
For i_row = 5 To l_row
Me.cboArtikelNr.AddItem ThisWorkbook.Sheets(wsh_name).Cells(i_row, 2)
Me.cboBezeichnung.AddItem ThisWorkbook.Sheets(wsh_name).Cells(i_row, 3)
Next i_row
End Sub



Private Sub cboArtikelNr_Click()
Dim rng As Range
Me.txtLagerbestand = ""
Me.cboBezeichnung.ListIndex = Me.cboArtikelNr.ListIndex
Set rng = ThisWorkbook.Sheets(wsh_name).Range("B:B").Find(Me.cboArtikelNr, LookIn:=xlValues,  _
lookat:=xlWhole)
If Not rng Is Nothing Then
Me.txtLagerbestand = rng.Offset(0, 2)
End If
End Sub



Private Sub cboBezeichnung_Click()
Dim rng As Range
Me.txtLagerbestand = ""
Me.cboArtikelNr.ListIndex = Me.cboBezeichnung.ListIndex
Set rng = ThisWorkbook.Sheets(wsh_name).Range("C:C").Find(Me.cboBezeichnung, LookIn:=xlValues,  _
lookat:=xlWhole)
If Not rng Is Nothing Then
Me.txtLagerbestand = rng.Offset(0, 1)
End If
End Sub


mfG
Ingo Christiansen

Anzeige
AW: ComboBox mit Sheets
29.10.2008 13:02:39
Frank
Hallo Ingo,
funktioniert wunderbar,
vielen Dank für deine Hilfe.
Gruss
Frank

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige