Anzeige
Archiv - Navigation
1240to1244
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

Werteliste in Daten-Gültigkeit

Werteliste in Daten-Gültigkeit
Harald
Werteliste mittels VBA in die Quelle von Daten-Gültigkeit übernehmen
Ich erstelle in VBA einen String, in dem beispielsweise ca. 50 Namen, getrennt durch Komma, aufgenommen werden, z. B. " Maier, Müller, Schulze, usw."
Diesen String weise ich mittels VBA der Quelle einer Gültigkeitsüberüberprüfung zu (zulassen: Liste, Quelle mit String in VBA befüllt.
Nun zum Problem:
Wenn ich diese Liste in einem Tabellenblatt erstelle und unter Quelle den Bereich, z. B. =A1:A50 eingebe, sind alle 50 Einträge in der Auswahlliste der Zelle aufgelistet.
Wenn ich diese Liste der Namen mit VBA erstelle und mit VBA unter Quelle den String eintrage, werden nur 27 Namen aufgelistet.
Mache ich hier einen Denkfehler oder ist das eine Beschränkung von Excel?
MfG
Harald
Gültigkeitsliste per VBA erstellen
04.12.2011 14:47:39
NoNet
Hallo Harald,
zumindest unter Excel 2010 gibt es hier keine Beschränkung auf 27 Werte - ich vermute, dass es diese auch unter Excel XP nicht gab !
Teste doch mal das folgende Makro : Es erstellt in der aktuellen Zelle eine Gültigkeitsliste mi 50 nummerierten Werten Klappt das ?
Sub Gueltigkeitsliste_erzeugen()
'Erstellt in der aktuellen Zelle eine Gültigkeitsliste mit zufälligen Werten
'04.12.2011, NoNet - www.excelei.de
Dim lngZ As Long, lngC As Long, strT As String, strG As String
strG = ""
For lngZ = 1 To 50 '50 Einträge in der liste
strT = Format(lngZ, "00 - ") 'jede Zeile beginnt mit Nummerierung
For lngC = 1 To 5 ' 5 zufällige Zeichen
strT = strT & Chr(Rnd() * 26 + 64)
Next
strG = strG & strT & ","
Next
With Selection.Validation
.Delete 'Bestehende Liste zunächst löschen
.Add Type:=xlValidateList, Formula1:=strG
End With
End Sub
Gruß, NoNet


Anzeige
AW: Werteliste in Daten-Gültigkeit
04.12.2011 17:38:45
Reinhard
Hallo Harald,
veränder mal die Länge der Namensliste sodaß sie unter 257 bleibt.
Gruß
Reinhard
Nachtrag, XL2000 geht es nur bis 256 Zeichen o.w.T
04.12.2011 17:45:45
Reinhard


AW: Werteliste in Daten-Gültigkeit
04.12.2011 20:25:06
Harald
Hallo
Vielen Dank für die schnellen Antworten.
@NoNet
Einen ähnlichen Code verwende ich. Bei der Kontrolle wird der String so befüllt, wie ich es erwarte.
Wenn ich den String in die Daten-Gültigkeit übernehme, ist nach bspw. 27 Namen Schluss.
@Reinhard
In Excel konnte ich auf die Schnelle nicht testen, jedoch habe ich eine Textdatei mit Namen erstellt. Hier kam ich bei etwa 28 Namen auf 267 Byte, je nach Länge der Namen.
Deine 'Lösung' erscheint mir daher plausibel.
Die Erklärung 'Begrenzung auf 256 Zeichen' hatte ich bislang vergeblich gesucht.
Wenn dem tatsächlich so ist (ich werde berichten...), kann ich das nur umgehen, indem ich eine Hilfstabelle erstelle und den Bezug zu diesem Tabellenausschnitt in die Quelle eintrage? Oder gibt es einen eleganteren Weg?
MfG
Harald
Anzeige
AW: Werteliste in Daten-Gültigkeit
04.12.2011 21:11:07
Reinhard
Hallo Harald,
von der Aussage "ähnlicher Code" haben wir nix.
Zeige ihn bitte.
Ich habe den Code von NoNet getestet in XL 2000.
Durch Verändern des Codes fand ich heraus daß es eine Fehlermeldung gibt wenn strG 257 oder länger wird.
(Sogar soweit daß nach einigen Tests mir Excel abschmierte)
Mein Problem, und das anscheinend von Nonet auch, ist, wir haben kein XL Xp also XL 2002.
ERgo, zeige deinen Code oder eine Mappe, wenn dann jmd. hier ist der auch XL 2002 hat und netterweise
das dann testet so kriegst du Rückmeldung.
1) bei mir in XL 2002 läuft der Code anstandslos
2) bei mir in XL 2002 läuft er auch nicht.
Bei 1) solltest du dir Gedanken machen ob deine Excel Installation marode sein kann.
Bei 2) ist das ein starker Hinweis daß es halt wie bei meinem XL 2000 nicht geht "zu lange" Ausdrücke als Liste einzustellen.
Gruß
Reinhard
Anzeige
@Reinhard : 5 aus 8 - ohne 2002 ;-)
05.12.2011 08:58:09
NoNet
Hallo Reinhard,
erstmal Respekt zu Deiner Experimentierfreude und der daraus gewonnenen Erkenntnis !
Die Begrenzung auf 256 Zeichen ist zwar irgendwie bekannt, aber leider nicht stets präsent. Ich wäre darauf wohl nicht gekommen.
Mit Deiner Vermutung hast Du übrigens Recht :
Mein Problem, und das anscheinend von Nonet auch, ist, wir haben kein XL Xp also XL 2002.

Ich bin zwar Excel-mässig sehr gut ausgestattet, aber die Version XP/2002 ist bei mir (fast komplett) vorbeigegangen - ich hatte nur mal eine inoffizielle BETA-Version, die ich jedoch nie produktiv eingesetzt habe.
Ansonsten kann ich auf meinem PC mit 5 der letzten 8 Excel-Versionen arbeiten (2 Versionen direkt installiert, 3 Versionen als "Virtuelle Applikation", d.h. direkt aus Windows heraus aufrufbar - auch ohne Virtuelle Machine).
Hier ein Original-Screenshot (kein FAKE !!) aller Excel-Versionen (gleichzeitig auf meinem Arbeits-PC gestartet) :
Userbild
Es fehlen lediglich noch die Versionen Excel 5, Excel 95 und Excel 2002 ;-))
Gruß, NoNet
Anzeige
AW: Werteliste in Daten-Gültigkeit
04.12.2011 21:17:57
Josef

Hallo Harald,
probier es mal so.
Sub test2()
  Dim vntList(1 To 800) As Variant
  Dim lngI As Long
  
  For lngI = 1 To 800
    vntList(lngI) = "Name " & lngI
  Next
  
  Range("A1").Validation.Delete
  Range("A1").Validation.Add xlValidateList, Formula1:=Join(vntList, ",")
End Sub



« Gruß Sepp »

Anzeige
AW: Werteliste in Daten-Gültigkeit
05.12.2011 00:44:36
Reinhard
Hallo Sepp,
letztlich zwangsläufig habe ich es 3-4 mal getestet mit jedesmal neu gestartetem XL 2000,
also neue leere mappe.
Jedesmal bei F5 bei deinem Code ist Excel verschwunden.
Da kommt nictmal was wie Fehlerbericht an MS senden oder so, es ist einfach wech.
Das hilft dem Anfrager nichts, ist nur mal so als Feedback :-)
Gruß
Reinhard
@Sepp : Gute Idee - Excel 2000 crasht
05.12.2011 09:02:47
NoNet
Hey Sepp,
eigentlich finde ich Deine Lösung eine gute Idee - und es wäre sensationell wenn sie auch tatsächlich funktionieren würde.
Das Problem ist nur : Excel 2000 crasht bei dieser Lösung, d.h. es schmiert kommentarlos ab (zumindest auf meinem PC) - siehe Original-GIF-Video :
Userbild
Schade, denn die Idee ist Klasse !
Gruß, NoNet
Anzeige
AW: Werteliste in Daten-Gültigkeit
06.12.2011 20:57:25
Harald
Hallo zusammen
Ich konnte die angebotenen Lösungsansätze leider erst jetzt testen, in der Firma, mit Excel 2003 SP3.
Ich habe alle Vorschläge probiert, die Werteliste wurde stets bei 256 Zeichen abgeschnitten-schade.
Vielen Dank für Eure Antworten, es sind ein paar tolle Denkanstöße dabei - man lernt nie aus!!!
Viele Grüße
Harald

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige