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

Dropdownliste aus anderem Reiter mit leeren Zellen

Dropdownliste aus anderem Reiter mit leeren Zellen
15.05.2015 12:00:58
assel90
Hallo zusammen!
Ich möchte per VBA eine Dropdownliste erstellen, da die normale "Länge" die Excel anbietet für die Anzahl an Auswahlmöglichkeiten nicht ausreicht.
Mein Vorhaben sieht wie folgt aus: Ich möchte im ersten Tabellenblatt eine Dropdownliste erzeugen, die ihre Werte aus einer "Datenbank" aus dem zweiten Tabellenblatt bezieht. Zwischen den auszuwählenden Werten sind jedoch jeweils leere Zellen, die ich nicht mit drin haben möchte. Alle Werte befinden sich in einer Zeile.
Optimal wäre nach meiner Ansicht eine VBA-Lösung, die mit einer Schleife die Zeile durchgeht und aus allen ausgefüllten Zellen die Dropdownliste erzeugt.
Ich habe mich jetzt schon länger daran versucht und bekomme es einfach nicht hin. Ich hoffe mir kann jemand helfen!

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dropdownliste aus anderem Reiter mit leeren Zellen
15.05.2015 13:15:39
Nepumuk
Hallo,
ohne Mustermappe kann ich dir nur ein Beispiel liefern welches du noch anpassen musst:
Public Sub Beispiel()
    Dim avntValues As Variant
    Dim strText As String
    With Tabelle2
        avntValues = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)).Value
    End With
    strText = Join(WorksheetFunction.Transpose(avntValues), ";")
    strText = Replace(strText, ";;", ";")
    strText = Replace(strText, ";", ",")
    With Tabelle1.Cells(1, 1).Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:=strText
        .IgnoreBlank = True
        .InCellDropdown = True
    End With
End Sub

Gruß
Nepumuk

Anzeige
AW: Dropdownliste aus anderem Reiter mit leeren Zellen
15.05.2015 13:38:45
assel90
Danke schonmal!!!
Hab es eben versucht, aber es kommt der Fehler, dass ein Objekt fehlt...
Also die Zelle in der die Dropdownliste sein soll ist im Reiter "Arbeitsblatt" Zelle B2. Der Datenbankreiter heißt "Grundwinkel" und die Zeile in der die auszulesenden Werte stehen, ist Zeile 2 beginnend in Spalte B.

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
15.05.2015 13:54:22
Nepumuk
Hallo,
lad halt eine Mustermappe hoch.
Gruß
Nepumuk

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
15.05.2015 14:02:19
assel90
https://www.herber.de/bbs/user/97659.xlsm
hier die Test-Datei. Ich möchte im Prinzip die 3 Dropdownlisten auf dem Reiter "Arbeitsblatt" mit einer Makro erzeugen, damit ich alle Daten erfassen kann und das Ganze dynamisch funktioniert wenn mal etwas geändert wird. Danke!

Anzeige
AW: Dropdownliste aus anderem Reiter mit leeren Zellen
15.05.2015 14:20:03
Nepumuk
Hallo,
und was sollen die genau für Daten aus welcher Tabelle beinhalten?
Gruß
Nepumuk

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
15.05.2015 14:31:18
assel90
Hi,
in den "Datenbanken" stehen Teilenummern drin. Also in den Reitern "Grundwinkel" Vorrichtungen" und "Oberteile". Diese Teilenummern möchte ich im Reiter "Arbeitsblatt" in den jeweiligen Dropdowns zur Auswahl haben. Beim Testen hat das Ganze mit der "normalen" Excel-Dropdown Funktion ausgereicht. Wenn ich jetzt aber alle Nummern einfüge wird das zu viel und funktioniert nicht mehr. Deshalb sollte das jetzt per VBA realisiert werden. Ist das verständlich? :-D

Anzeige
AW: Dropdownliste aus anderem Reiter mit leeren Zellen
15.05.2015 14:55:41
Nepumuk
Hallo,
dann teste mal:
Option Explicit

Public Sub CreateValidation()
    Dim avntValues As Variant, avntSheetNames As Variant
    Dim strValidationList As String
    Dim ialngIndex As Long, lngOldLength As Long
    avntSheetNames = Array("Grundwinkel", "Vorrichtungen", "Oberteile")
    For ialngIndex = 0 To 2
        With Worksheets(avntSheetNames(ialngIndex))
            avntValues = .Range(.Cells(2, 2), .Cells(2, .Columns.Count).End(xlToLeft)).Value
        End With
        strValidationList = Join(WorksheetFunction.Transpose( _
            WorksheetFunction.Transpose(avntValues)), ";")
        Do
            lngOldLength = Len(strValidationList)
            strValidationList = Replace(strValidationList, ";;", ";")
        Loop Until lngOldLength = Len(strValidationList)
        strValidationList = Replace(strValidationList, ";", ",")
        With Worksheets("Arbeitsblatt").Cells(2, 2 + ialngIndex * 4).Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                xlBetween, Formula1:=strValidationList
            .IgnoreBlank = True
            .InCellDropdown = True
        End With
    Next
End Sub

Gruß
Nepumuk

Anzeige
AW: Dropdownliste aus anderem Reiter mit leeren Zellen
18.05.2015 08:03:59
assel90
Das funktioniert super! Ich danke dir, habe mir da echt die Zähne dran ausgebissen!!

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 13:31:22
assel90
Hallo,
nochmal eine Frage: Als ich die Tabellenblätter nach und nach mit den richtigen Daten gefüllt habe kam der Fehler: Entferntes Feature: Datenüberprüfung von /xl/worksheets/sheet1.xml-part
Durch Recherche habe ich herausgefunden, dass es wahrscheinlich an einem Befehl in dem eingefügten Quellcode liegt, der nicht mit Excel 2007 kompatibel ist. Speichere ich die Datei als Excel-2003 Version als .xls ab funktioniert alles fehlerfrei. Weiß jemand welcher Befehl das sein könnte und durch was er ersetzt werden muss?
Danke!

Anzeige
AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 13:46:04
Nepumuk
Hallo,
ich hab das unter Excel 2013 erstellt und da funktioniert es einwandfrei. Am Code kann es demnach nicht liegen. Nachdem die Datenüberprüfung jedes mal neu erstellt wird, lösch die alten einfach mal dann Mappe speichern, schließen, erneut öffnen und dann das Makro ausführen.
Gruß
Nepumuk

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 14:14:55
assel90
Hallo,
ich habe sowohl die Zellen geleert als auch den Quellcode entfernt, abgespeichert neu geöffnet und wieder eingefügt. Der Fehler tritt immer wieder auf. Ich dachte es liegt evtl. daran, dass die maximale Zeichenzahl für die Dropwonliste möglicherweise überschritten wurde, aber auch nach Reduzierung ist der Fehler immer noch aufgetreten.
Gruß

Anzeige
AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 14:30:47
Nepumuk
Hallo,
das ist aber nicht zufällig eine englische Excelversion?
Gruß
Nepumuk

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 14:33:56
assel90
Hallo,
als Sprache ist auf jeden Fall deutsch eingestellt. Ob die Ausgangsversion englisch ist, weiß ich nicht. Wo sehe ich das denn?
Gruß

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 14:45:18
Nepumuk
Hallo,
gib mal eine Gültigkeitsliste manuell ein. Musst du dann Semikolons oder Kommas als Trennzeichen eingeben?
Gruß
Nepumuk

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 14:48:20
assel90
Hallo,
mit Semikolons!
Und by the way, das Betriebssystem läuft auf englisch.
Gruß

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 14:59:02
Nepumuk
Hallo,
dann lösch mal in der Prozedur diese Zeile:
strValidationList = Replace(strValidationList, ";", ",")
Gruß
Nepumuk

Anzeige
AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 15:00:45
Nepumuk
Hallo,
dann lösch mal in der Prozedur diese Zeile:
strValidationList = Replace(strValidationList, ";", ",")
Gruß
Nepumuk

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 15:19:05
assel90
Hallo,
dann steht alles in einer Zeile. Also ich habe nur noch einen Wert zur Auswahl in der Dropdownliste in dem alle Werte stehen

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 15:30:19
Nepumuk
Hallo,
dann fällt mir auch nichts mehr ein. Ist dein Office auf dem aktuellsten Stand was Updates betrifft?
Gruß
Nepumuk

AW: Dropdownliste aus anderem Reiter mit leeren Zellen
20.05.2015 15:35:55
assel90
Hallo,
sollte es eigentlich sein... In den nächsten Monaten wird sowieso auf ein neues Office-Paket umgestellt. Bis dahin speichere ich die Datei einfach als .xls, da sie da ja funktioniert.
Ich danke dir für deine ausgiebige Hilfe!
Gruß
Anzeige

377 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige