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

combobox
02.02.2009 15:55:00
Robi
Hallo zusammen
Ich sortiere meine Tabelle mittels CommandButton so:

Sub Bremssohlen_austauschen_16Stk()
Dim FiNr1 As Integer, FiNr2 As Integer, FiNr3 As Integer, wks As Worksheet, ZelleTitel As  _
Range
Const Titel1 As String = "D"
Const Titel2 As String = "Sgns"
Const Titel3 As String = "16 Bremssohlen austauschen"
Const TitelZeile = 1 'Zeile mit den Spaltentiteln
Sheets("Grunddaten").Select
Set wks = Sheets("Grunddaten")
With wks.Rows(TitelZeile)
Set ZelleTitel = .Find(what:=Titel1, LookIn:=xlValues, lookat:=xlWhole)
If ZelleTitel Is Nothing Then
MsgBox Titel1 & "  in Titelzeile nicht gefunden"
Exit Sub
Else
FiNr1 = ZelleTitel.Column
End If
Set ZelleTitel = .Find(what:=Titel2, LookIn:=xlValues, lookat:=xlWhole)
If ZelleTitel Is Nothing Then
MsgBox Titel2 & "  in Titelzeile nicht gefunden"
Exit Sub
Else
FiNr2 = ZelleTitel.Column
End If
Set ZelleTitel = .Find(what:=Titel3, LookIn:=xlValues, lookat:=xlWhole)
If ZelleTitel Is Nothing Then
MsgBox Titel3 & "  in Titelzeile nicht gefunden"
Exit Sub
Else
FiNr3 = ZelleTitel.Column
End If
End With
Selection.AutoFilter Field:=FiNr1, Criteria1:="x"
Selection.AutoFilter Field:=FiNr2, Criteria1:="x"
Selection.AutoFilter Field:=FiNr3, Criteria1:=""
Range("C5").Select
ActiveCell.FormulaR1C1 = "16 Bremssohlen austauschen"
End Sub


Da ich aber sehr veile unterschiedliche Varianten so aufbereiten muss, möchte ich die Tabelle mittels 3 Comboboxen bedienen, Combobox1 soll die Sprache filtern, Combobox2 soll den Wagentyp filtern z.B. Sgns, Combobox3 soll die einzelnen Produkte filtern z.B. 16 Bremssohlen austauschen.
Ist das überhaupt möglich?
Vielen Dank.
Robi

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

Betreff
Datum
Anwender
Anzeige
AW: combobox
03.02.2009 10:49:48
fcs
Hallo Robi,
es geht sehr viel.
Hier eine Beispieldatei.
https://www.herber.de/bbs/user/59033.xls
Die ausgewählten Werte zum Filtern werden als Parameter an einer etwas allgemeiner definierte Prozedur übergeben.
Gruß
Franz
AW: combobox
05.02.2009 14:44:19
Robi
Hallo Franz
Deine Datei funktioniert gut, vielen Dank.
Es werden aber max .11 Titel in der Combobox angezeigt, ich brauche wesentlich mehr.
Ist VBA in diesem Zusammenhang begrenzt oder mache ich da was falsch?
Zudem sollte, nachdem ein "Feld" in Combobox 2 ausgewählt ist, nur noch die Positionen in Combobox3 erscheinen die einen Filtereintrag haben.
Wäre es ev. möglich Combobox3 durch einzelne OptionButton zu ersetzen mit dem Ziel, dass die Optionbuttons nach Auswahl in Combobox1 und 2 als aktiv oder inaktiv erscheinen und mit der Möglichkeit diese anzuklicken und anschliessend zusammengefasst anzeigen zu können.
Datei angehängt!https://www.herber.de/bbs/user/59126.xls
Ich frage mich ob mein Vorhaben überhaupt mit VBA lösbar ist.
Vielen Dank im Voraus
Robi
Anzeige
AW: combobox
06.02.2009 09:55:00
fcs
Hallo Robi,
lösbar ist per VBA ist vieles. Man nur aufpassen, dass man dabei die Übersicht / den Durchblick nicht verliert.
Die Verlängerung der Auswahllisten für die Comboboxen ist kein Problem.
Ich hab den Bereichen mit den Auswahldaten Namen zugewiesen (Auswahl.Combo01, Auswahl.Combo02, Auswahl.Combo03). Im Menü Einfügen--Namen--Definieren kannst du die Bereiche anpassen.
- Name auswählen
- Bereich anpassen oder neu Auswählen
- Hinzufügen
Danach Datei speichern und evtl. Schließen und wieder öffnen, damit die Auswahllisten in den Boxen aktualisiert werden.
Die Reduktion der Auswahl in Combobox 3 auf die Produkte, die beim gewählten Typ verfügbar sind, erfordert, dass die Auswahlliste nach Wahl eines Typs neu berechnet wird. Das ist grundsätzlich machbar,
erfordert aber bei deiner Datei wegen der Menge an auszuwertenden Zellen wahrscheinlich jedes mal ein Paar Sekündchen.
Checkboxen statt Combibox:
Hier schlage ich vor, die Combibox durch eine Listbox mit Mehrfach-Auswahl zu ersetzen. Diese ist programmiertechnisch wesenlich einfacher zu handhaben als viele einzelne Checkboxen.
Allerdings muss dann das Filterkonzept geändert werden, damit mehr als ein Produkt ausgewählt werden kann. Einsprechend der Auswahl werden dann vor dem Filtern in einer separaten Spalte alle Zeilen mit "x" markiert, die nicht ausgeblendet werden sollen. Danach wird dann der Filter nur für dies Spalte auf "x" gesetzt.
Vorschlag für die mehrsprachigen Einträge:
Ich gehe davon aus, dass die Zahlenwerte für die 3 Sprachen bei den Produkten immer identisch sind.
Die Pflege der Daten wird wesentlich einfacher, wenn du die Informationen die in den 3 Sprachen unterschiedlich sind in zusätzlichen Spalten verwaltest und zwar in Spalten rechts neben den jetzigen Daten. Zumindest ab Zeile 42, ab der die Daten zu den Produkten beginnen. Abhängig von der gewählten Sprache werden dann dann per Formel die Daten zur jeweiligen Sprache in den Linken Teil der Tabelle geholt.
Vorteile:
1.) Die Zahlenwerte müssen für jede Position nur einmal eingegeben werden.
2.) Eine weitere Sprache kann mit relativ wenig Aufwand ergänzt werden.
3.) Die ganze Dateneingabe ist weniger fehleranfällig.
weitere Sicherheitsmaßnahme:
Deine Tabelle ist anfällig gegen versehentliches Sortieren der Daten. Du solltest alle Datenzeilen regelmäßig in einer separaten Spalte fortlaufend durchnummerieren. So kannst du im Falle eines Falles (=Desaster) die ursprüngliche Reihenfolge der Zeilen wieder herstellen. Diese Nummerierung kann man auch automatisieren, z.B. immer vor dem Speichern oder Schließen der Datei.
Ich werde am Wochenende mal schauen, wie die Programmierung der Combox, der Listbox und der Filterung angepasst werden muss, damit es funktioniert. Das ist unabhängig davon wie du die 3 Sprachen einbauen willst.
Gruß
Franz
Anzeige
AW: combobox
06.02.2009 15:21:01
Robi
Hallo Franz
Vielen Dank für die schnelle Antwort, Du hast Recht, ich verliere langsam schon die Übersicht.
Es liegt daran, dass ich mich mit VBA sehr wenig auskenne und nicht abschätzen kann was sind die Möglichkeiten sind.
Die Reduktion der Auswahl in Combox 3 auf die Produkte ist in meinem Fall wichtig weil die Datenbank am Schluss ca 300 Produkte haben wird und das in 3 Sprachen ergibt 900 Varianten.
Mit der stufenweisen Reduktion der Auswahl wird die Bedienung der Datenbank erleichtert, die Bedienfreundlichkeit ist auch sehr wichtig.
Dein Vorschlag mit Checkboxen statt Comibox finde ich gut, die durch Mehrfachauswahl angewählte Produkte können dann je nach Menge komprimiert auf einer A4 Papier angezeigt und gedruckt werden.
Das spart schlussendlich ein Haufen Papier.
Dein Vorschlag für die Mehrsprachigen Einträge habe ich nicht ganz verstanden, richtig ist, dass die Einträge in 3 Sprachen immer identisch sind.
Ich bin aber für Vorschläge offen, die von dir aufgezählten Vorteile sind wichtig.
Die vorgeschlagene Sicherheitsmassnahme finde ich wichtig und bin damit einverstanden.
Du hast mir schon jetzt sehr viel beigebracht, vielen Dank , bin gespannt auf deine Lösung.
Mit Gruss
Luan
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige