Anzeige
Archiv - Navigation
1152to1156
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

Variable Liste ohne Doppel in Gültigkeitsdropdown

Variable Liste ohne Doppel in Gültigkeitsdropdown
Jörg-HH
Hallo zusammen,
ich möchte eine Ansammlung von Namen als Gültigkeit in ein Dropdown stecken. Allerdings können die Namen mehrfach vorkommen (und vielleicht kommen mal einige hinzu - insgesamt nicht mehr als 50) - im Dropdown sollen sie aber ohne Doppel erscheinen.
Hab mir dazu anhand Excelformel Nr 194 schon mal was gebastelt, aber die Lösung krankte daran, daß sich die Gültigkeitsliste nicht automatisch erweitert, auch nicht, wenn ich den Bereich als Liste definiere. - Die aktuelle Lösung -die ganze Spalte in die Gültigkeit- finde ich wenig elegant, weil sie das Dropdown mit Leerzellen aufbläht.
https://www.herber.de/bbs/user/69281.xls
Hat jemand eine bessere Idee?
VG Jörg
Variable Liste ohne Doppel in Gültigkeitsprüfung
28.04.2010 17:17:33
Erich
Hi Jörg,
du hattest schon den Namen ListeNamen eingerichtet, den habe ich etwas umdefiniert:
 GH
2  
3  
4  
5 7

Formeln der Tabelle
ZelleFormel
H5=ANZAHL2(ListeNamen)
Namen in Formeln
ZelleNameBezieht sich auf
H5ListeNamen=BEREICH.VERSCHIEBEN(Tabelle1!$E$2;0;0;SUMME(WENN(Tabelle1!$C$1:$C$999<>"";1/ZÄHLENWENN(Tabelle1!$C$1:$C$999;Tabelle1!$C$1:$C$999))))

Jetzt brauchst du nur bei der Gültigkeit^als Quelle =ListeNamen anzugeben.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
perfekt
28.04.2010 22:25:59
Jörg-HH
Hi Erich
danke für den Tip!
VG Jörg
...doch noch ne Frage...
29.04.2010 12:30:41
Jörg-HH
Hallo Erich
das Modell klappt und meine Anpassung an die Originaldatei auch. Jetzt fiel mir beiläufig auf: die Formelüberwachung meldet mir bei den Zellen der Spalte E einen Fehler (der rote Strich zum Vorgänger).
Wie so funktioniert das Ganze, obwohl da was rot bemeckert wird...?
https://www.herber.de/bbs/user/69295.xls
VG Jörg
andere Formel oder ignorieren
29.04.2010 13:52:01
Erich
Hi Jörg,
die Frage würde ich umgekehrt stellen wollen:
Wieso wird da was rot bemeckert, obwohl das Ganze funktioniert?
Die Überprüfung kommt wohl nicht klar, weil in Spalte E auch Fehlerwerte #ZAHL! vorkommen.
Du kannst das ignorieren oder in Spalte E eine längere Formel einbauen, so wie hier:
https://www.herber.de/bbs/user/69300.xls
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
übersehenes Problem...
29.04.2010 23:32:41
Jörg-HH
Hallo Erich
die zweite Formel machte mir etwas Probleme, sie auf meine Orig-Datei anzupassen, und auf die Weise bin ich auf etwas gestoßen, das mir bei der ersten Formel gar nicht aufgefallen war...
Meine Orig-Datei unterscheidet sich noch in einer Kleinigkeit: Sie hat eine Kopfzeile. Die Werte, um die es geht, beginnen also erst in Zeile 2. Mit der ersten Formel bearbeitet, "vergißt" die Hilfsspalte (und damit das Dropdown) den ersten Wert (also den in der zweiten Zeile). Das war mir nicht aufgefallen in meiner Euphorie, daß es wenigsgtens annähernd klappt.
Seltsamerweise ist das in der Beispieldatei noch anders: Ich hab da mal eine Zeile eingefügt, und dort vergißt die Hilfsspalte sogar gleich die ersten beiden Werte (meier und schulz).
https://www.herber.de/bbs/user/69312.xls
Ich habe - abgesehen von meinen ergfolgslosen Versuchen - keine Idee, wie man die Formeln auf die Verhältnisse mit Kopfzeile anpassen könnte. Theoretisch wäre es zwar möglich, auf die Kopfzeile zu verzichten. Aber es stehen in einigen Spalten Zahlen, die ziemlich unklar sind, wenn nicht oben drüber steht, was sie darstellen. Insofern wäre mir eine Lösung mit Kopfzeile schon sehr recht.
Hast du 'ne Idee?
Viele Grüße - Jörg
Anzeige
vielleicht kein Problem mehr
30.04.2010 01:29:33
Erich
Hi Jörg,
so könnte es gehen, wenn ich das richtig verstanden habe:
https://www.herber.de/bbs/user/69314.xls
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
grr... jetzt krieg ich ein Zeitproblem :-)
01.05.2010 13:52:22
Jörg-HH
Hi Erich
alles klappt wie gewünscht - aaabäääär...
plötzlich ist alles in Excel grottenlangsam, wenn meine Orig-Datei geöffnet ist (25MB, ca 110 Blätter)
Statt der Formel
INDEX(H:H;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(H$2;;;ZEILE($1:$100));H$2:H$101)=1;ZEILE($2:$101));ZEILE(A1)))
heißt es bei mir jetzt
INDEX(H:H;KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(H$2;;;ZEILE($1:$1000));H$2:H$1001)=1;ZEILE($2:$1001));ZEILE(A1)))
(also nur ein größerer Listenumfang) und das in drei Spalten.
Ich hab mal die Formeln in die Beisp-Datei gepackt (für eine Spalte). Auch den Bereichsnamen hab ich im Umfang angepaßt.
https://www.herber.de/bbs/user/69342.xls
Wenn du in dieser Datei was änderst, läuft alles normal. Wenn aber auch die Orig-Datei (mit gleichfalls diesen Formeln) geöffnet ist, benötigt auch in dieser Beisp-Datei jede Änderung 1-2 min.
Was ist in diesen Formeln bloß verborgen, das Excel dermaßen lahmgelegt wird...?
VG Jörg
Anzeige
VBA Variante klappt...
02.05.2010 00:28:41
Jörg-HH
Hi Tino
das läuft ja fix mit VBA...
Wollte da noch - weil es ja nur Hilfsspalten für das Dropdown sind - die Zeichen grau haben (die werden von VBA immer schwarz gemacht) und hatte mir das so gedacht: Range("MaxRow").Font.ColorIndex = 15 , aber das klappt nicht mit dem Range. Laß ich Range weg, wird gemeckert "ungültiger Bezeicher". Was mach ich falsch?
VG Jörg
AW: VBA Variante klappt...
02.05.2010 07:38:45
Hajo_Zi
Hallo Jörg,
"MaxRow" ist wahrscheinlich keine Zellbezeichnung sondern eine Variable also ohne "

Anzeige
Schriftfarbe Grau
02.05.2010 08:08:46
Erich
Hi Jörg,
warum machst du dir überhaupt das Problem, die Schriftfarbe in VBA auf Grau zu setzen?
Es wäre wohl einfacher, das einmalig per Hand mit allen gewünschten Spalten zu tun.
Wenn es denn in der Prozedur sein soll, dann für Spalte P z. B. hier:

With Range("P2").Resize(oDic.Count)
.Cells.Resize(oDic.Count) = Application.Transpose(oDic.keys)
.Sort Key1:=.Cells(1, 1), Order1:=xlAscending, Header:=xlNo
.EntireColumn.Font.ColorIndex = 15
End With
Noch eine Bemerkung zu den Formeln:
Die beiden Varianten in meiner letzten Mappe sind doch nichts anderes als die aus excelformeln.de,
die habe ich mir ja nicht selbst aus den Fingern gesogen.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Schriftfarbe Grau
02.05.2010 09:24:11
Jörg-HH
Moin Erich
die Spalten sind ja eigentlich grau formatiert (von Hand in Excel so eingestellt und gut, dachte ich). Nur wenn der Code einmal drübergelaufen ist, sind sie wieder schwarz. Ich kann zwar dem Code nicht ansehen, wo er die Formatierung umstellt, aber es ist eben so, und deswegen wollte ich das gleich im Code wieder hinbiegen.
Schönen Sonntag!
Jörg
AW: Schriftfarbe Grau
02.05.2010 09:49:32
Tino
Hallo,
mach aus der Zeile
Range("P2", Cells(Rows.Count, 16).End(xlUp)).Clear
diese
Range("P2", Cells(Rows.Count, 16).End(xlUp)).ClearContents
dann bleibt die Formatierung erhalten.
Hat den Nachteil, dass das Usedrange unnötig groß werden kann,
aber in Deinem Fall dürfte dies sowieso keine Rolle spielen,
weil die Liste immer kleiner oder gleich der Liste in Spalte M ist.
Gruß Tino
Anzeige
Schriftfarbe im Datenbereich
02.05.2010 09:29:49
Tino
Hallo,
passe hierfür diesen Bereich so an.
                    If MaxRow > 2 Then
With Range("P2").Resize(oDic.Count)
.Cells = Application.Transpose(oDic.keys)
.Sort Key1:=.Cells(1, 1), Order1:=xlAscending, Header:=xlNo
.Cells.Font.ColorIndex = 15 'hier Farbe für Schrift
End With
Else
Range("P2") = Cells(2, 8)
Range("P2").Font.ColorIndex = 15'hier Farbe für Schrift
End If
Mir ist dabei noch aufgefallen.
Gruß Tino
... bei großem Datenbestand ...
01.05.2010 20:17:12
Erich
Hi Jörg,
ganz kurz zwischendurch:
Diese Arrayformeln sind nun mal bei großen Datenbeständen langsam.
Schau dir mal auf
http://www.excelformeln.de/formeln.html?welcher=194
die Gegend
"Dasselbe ohne Arrayformel - bei großem Datenbestand - (Josef Burch):"
und
"Hilfsspaltenlösung ohne Arrayformel für Zahlen und Texte mit richtiger Reihenfolge"
an.
Zwei Formellösungen mit hoffentlich weniger Rechenaufwand sind hier drin:
https://www.herber.de/bbs/user/69351.xls
Überflüssige Zellen (wie evtl. "=ANZAHL2(ListeNamen)") würde ich löschen. Vielleicht bringt es ein wenig.
Bei 25MB, ca. 110 Blättern könntest du auch über Alternativen zu Excel nachdenken...
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: ... bei großem Datenbestand ...
02.05.2010 00:24:05
Jörg-HH
Hi Erich,
die Variante von Josef hatte ich auch angeschaut, aber die bezieht sich nur auf Zahlen (wenn ich richtig verstanden habe). Die andere von dir erwähnte Variante hab ich schlicht nicht mehr wahrgenommen, weil ich schon betriebsblind geworden war :-) und die beiden Beispiele in der neuen Datei machen nun den Formelsalat in meinem Spatzenhirn komplett...
Ich habe die Datei einst mit 60-70 Blättern übernommen - erstellt mit Excel-Grundkenntnissen, aber rechentechnisch sehr umfangreich und korrekt rechnend. Hätte wohl selbst Vieles anders aufgezogen, aber wollte nicht in ein funktionierendes Rechenwerk eingreifen, nur um das Rad neu zu erfinden. Habe also meine eigenen Ideen drumherum gebaut.
Was meinst du denn mit Alternativen zu Excel? Ich hatte mal mit Palo geliebäugelt, aber das verträgt kein VBA und nur rudimentäre Steuerelemente.
VG Jörg
Anzeige

43 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige