Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
936to940
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
936to940
936to940
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

ComboBox füllen

ComboBox füllen
27.12.2007 09:42:00
Gerhard
Hallo zusammen...
Habe folgendes Problem:
Ich möchte eine Combobox (cboProjekt) füllen. Die Werte dafür stehen in Tabellenblatt "BPF" Spalte K. Hier sind jedoch eine Menge doppelter Einträge vorhanden (Text) weil diese ComboBox auch wieder genau in diese Spalte einträgt.
Wie muss ich vorgehen, das die Einträge nur einmal in der ComboBox angezeigt werden?
Habe es über eine HILFSTABELLE versucht (welche schon für andere Comboboxen erstellt worden ist) aber mit dem was ich hier im Forum gefunden habe komme ich ned klar...
Kann mir hier jemand helfen?
Many Thx
Gerhard

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ComboBox füllen
27.12.2007 13:39:00
Gerhard
Servus Hajo...
Thx für deinen Tipp!!!
Aberirgendwie krieg ich das ned gebacken, das für meine COMBOBOX (ned ListBox) umzubauen...
Kannst du mir bitte nochmals helfen? Arrays sind mir noch etwas fremd :(
So sieht es bis jetzt aus:
Dim StListe() As String ' Array für die Werte
Dim Loletzte As Long ' letzte Zeile in Spalte A
Dim LoI As Long ' Schleifenvariable
Worksheets("HILFSTABELLE").Activate
' unabhängig von Excelversion für Spalte A (1)
Loletzte = IIf(IsEmpty(Cells(Rows.Count, 13)), Cells(Rows.Count, 13).End(xlUp).Row, Rows.Count)
ReDim Preserve StListe(0 To Loletzte - 2) ' Array Dimensionieren
For LoI = 2 To Loletzte ' Werte in Array schreiben ab Zeile 2
StListe(LoI - 2) = Cells(LoI, 1)
Next LoI
' Liste sortieren von A nach Z
Sort_A_Z StListe, LBound(StListe), UBound(StListe) ' Lbound kleinster Wert,UBound Größter Wert
cboProjekt.List = StListe(0) ' ersten Wert in Listbox schreiben
For LoI = LBound(StListe) + 1 To UBound(StListe)
' Vergleich ob aktueller Wert verschieden vom vorherigen Wert
'If StListe(LoI) StListe(LoI - 1) Then cboProjekt.List = StListe(LoI)
Next LoI
Wie bekomme ich das in die ComboBox Auswahlliste?
Thx
Gerhard

Anzeige
AW: ComboBox füllen
27.12.2007 13:41:46
Hajo_Zi
Hallo Gerhard,
ersetze in meinmem Code mein Steuerelement durch Dein Steuerelement.
Gruß Hajo

AW: ComboBox füllen
27.12.2007 13:44:56
Gerhard
Wow...dat ging ja flott...
Habe ich gemacht, Hajo (siehe Code) da kommt aber dann bei mir der Fehler:
Laufzeitfehler "381"
Eigenschaft List konnte nicht gesetzt werden. Index des Eigenschaftenfeldes ungültig.
Keinen Plan was ich da verkehrt mache...sorry
LG Gerhard

AW: ComboBox füllen
27.12.2007 13:51:19
Hajo_Zi
Hallo Gerhard,
ich auch nicht. Ich baue dies auch nicht nach. Ich habe das Problem nicht.
Gruß Hajo

Anzeige
AW: ComboBox füllen
27.12.2007 18:58:39
Gerhard
Danke Hajo!!!
*grmbl* is mir schon klar das du diese Probleme nicht hast... und auch nie hattest und die Weißheit mit der Schaufel gefressen hast...
LG Gerhard, dem die Arroganz mancher Leute so langsam tierisch auf den Sack geht!!!

AW: ComboBox füllen
27.12.2007 19:06:36
Hajo_Zi
Hallo Gerhard,
Du hast vielleicht falsche Vorstellungen.Warum sollte ich Deine Datei nachbauen?
Gruß Hajo

AW: ComboBox füllen
27.12.2007 19:13:00
Gerhard
Sers Hajo...
Naja falsche Vorstellungen ned...
Und wieso nachbauen? Ich verwende 1zu1 DEINEN empfohlen Code, lediglich das ListBox1 wurde gegen cboProjekt ausgetauscht. Soweit sollte das ja mal m. E. noch kein Problem für dich darstellen?
Jedoch ist es so, ich bekomme nur die Werte aus Spalte A rein (und das unsortiert, obwohl
Public Sub Sort_A_Z(SortArray, L, R) vorhanden ist und beim Einzelschritt (F8) auch durchlaufen wird)
Hier muss ich es doch ändern und zwar so, das Spalte K angesprochen wird, richtig?
Loletzte = IIf(IsEmpty(Cells(Rows.Count, 11)), Cells(Rows.Count, 11).End(xlUp).Row, Rows.Count)
Das war meine Frage, und ich glaube wiederum (oder habe ich wieder ne falsche Vorstellung?) um diese Frage zu beantworten muss man doch nix nachbauen, oder?
LG Gerhard

Anzeige
AW: ComboBox füllen
27.12.2007 19:23:00
Hajo_Zi
Hallo Gerhard,
Du hast also nicht meinen Originalcode verwendet, da Du ja Anpassungen vorgenommen hast. Also sieht Dein Code anders aus als meiner. Du bist Dir sicher das Du es korrekt geändert hast, ich nicht.
Ich lehne es ab über das Internet auf fremde Rechner zu schauen.
Gruß Hajo

AW: ComboBox füllen
27.12.2007 19:24:00
Hajo_Zi
Hallo Gerhard,
Du hast also nicht meinen Originalcode verwendet, da Du ja Anpassungen vorgenommen hast. Also sieht Dein Code anders aus als meiner. Du bist Dir sicher das Du es korrekt geändert hast, ich nicht.
Ich lehne es ab über das Internet auf fremde Rechner zu schauen.
Gruß Hajo

Anzeige
AW: ComboBox füllen
27.12.2007 20:14:00
Gerhard
okok...*lach* ich habe ja schon verstanden...
http://www.topdog24-7.de/Bestellplattform_NEU_1-7.xls
Hier die Datei. Achtung, hat mittlerweile fast 1 MB 8keine Ahnung warum die schon wieder so gross ist, aber egal)
Kurz zur Erläuterung, es geht um das UF Bestellung eintragen. Hier bei der Combobox Kommission/ Projekt, will ich die gewünschten Inhalte die in Sheet BPF Spalte 16 stehen drin haben,ohne doppelte.
Bevor du jetzt aufschreist , es sollte mal die Spalte 11 sein, das hat sich leider seit heute mittag geändert nun isses die 16 ;)
Kannst du bitte mal drüberkucken wo ich da den Hund drin habe? Ich bekomm das ned hin das er anstatt in Spalte 1 in Spalte 16 die Infos holen soll...
Many THX
Gerhard

Anzeige
AW: ComboBox füllen
27.12.2007 13:54:33
Gerhard
Hallo Hajo...
Habe meinen Fehler gefunden...
Dim StListe() As String ' Array für die Werte
Dim Loletzte As Long ' letzte Zeile in Spalte A
Dim LoI As Long ' Schleifenvariable
Worksheets("HILFSTABELLE").Activate
' unabhängig von Excelversion für Spalte A (1)
Loletzte = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 13).End(xlUp).Row, Rows.Count)
ReDim Preserve StListe(0 To Loletzte - 2) ' Array Dimensionieren
For LoI = 2 To Loletzte ' Werte in Array schreiben ab Zeile 2
StListe(LoI - 2) = Cells(LoI, 1)
Next LoI
' Liste sortieren von A nach Z
Sort_A_Z StListe, LBound(StListe), UBound(StListe) ' Lbound kleinster Wert,UBound Größter Wert
cboProjekt.AddItem StListe(0) ' ersten Wert in Listbox schreiben
For LoI = LBound(StListe) + 1 To UBound(StListe)
' Vergleich ob aktueller Wert verschieden vom vorherigen Wert
If StListe(LoI) StListe(LoI - 1) Then cboProjekt.AddItem StListe(LoI)
Next LoI
So bekomme ich die Daten in die ComboBox. Sorry hatte das .List mit eingesetzt.
Aber ich bekomme nur die Werte aus Spalte A rein (und das unsortiert, obwohl
Public Sub Sort_A_Z(SortArray, L, R) vorhanden ist und beim Einzelschritt (F8) auch durchlaufen wird)
Hier muss ich es doch ändern und zwar so, das Spalte K angesprochen wird, richtig?
Loletzte = IIf(IsEmpty(Cells(Rows.Count, 11)), Cells(Rows.Count, 11).End(xlUp).Row, Rows.Count)
Was nu hier wieder falsch?
HILFSTABELLE wird mit folgendem Satz aktiviert (was ja funzt sonst hätt ich ja ned die Werte von Spalte A :) )
Worksheets("HILFSTABELLE").Activate
Public Sub Sort_A_Z(SortArray, L, R)
Gruß Gerhard

Anzeige
AW: ComboBox füllen
27.12.2007 10:28:57
Luschi
Hallo Gerhard,
hier ein neuer Ansatz, das Problem zu lösen: http://www.spotlight.de/zforen/mse/m/mse-1196954774-4663.html
Hier wird per ADODB ein Recordset aufgebaut, der nur einmalige Werte enthält, die auch noch sortiert sind; kann ich nur empfehlen.
Gruß von Luschi
aus klein-Paris

AW: ComboBox füllen
27.12.2007 18:59:00
Gerhard
sers Luschi
Also dat is mia noch ne Ecke zu hoch... :D
Trotzdem Danke!!!
LG Gerhard

AW: ComboBox füllen
27.12.2007 12:09:00
Daniel
Hi
hab leider grad kein Excel hier am Rechner um es auszuformulieren, aber so sollte es funktionieren:
1. Spalte K per DATEN-FILTER-SPZIALFILTER mit der Option "ohne Duplikate" an eine freie Stelle im Tabellenblatt kopieren (bspw Spalte IV)
2. Combobox von dieser Spalte aus befüllen
3. Spalte IV wieder löschen
falls dir für Schritt 1 und 3 die Befehle fehlen, Aktion von Hand ausführen und den Recorder mitlaufen lassen
Gruss, Daniel

Anzeige
AW: ComboBox füllen
27.12.2007 19:02:40
Gerhard
Servus Daniel
Nachdem ich so langsam auf Hajos halbe Hilfe verzichten kann werde ich mal deinen Vorschlag versuchen und schauen ob ich damit klar komme...
Thx und ich lass die Frage mal offen
Gerhard

AW: ComboBox füllen... ERLEDIGT DANKE!!!!
27.12.2007 22:42:00
Gerhard

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige