Ich habe ein 3D-Array von Zeichenfolgen, myArray (1 bis 30,1 bis 80,1 bis 20). In meinem Arbeitsbuch habe ich eine Tabelle, die den Bereich (1,1) bis (30,20) belegt. Ich möchte die validation.add Typ Verfahren verwenden, um die Zellen der Tabelle in der folgenden Reihenfolge zu validieren:Hinzufügen von Daten Validierung zu einer Tabelle von einem 3D-Array, VBA Excel
der 1. Spalte der Tabelle:
Zelle (1, 1 ) enthalten die Werte myArray (1,1, 1 ) sollte auf myArray (1,80,)
Zelle (2, 1 ) die V enthalten sollte, alues myArray (2,1, 1 ) zu myArray (2,80,)
...
Zelle (30,) myArray die Werte enthalten sollte (30,1 , 1) bis myarray (30,80,)
der 2. Spalte der Tabelle:
Zellen (1, 2 ) sollten die Werte enthalten myArray (1,1, 2 ) zu myArray (1,80,)
Zelle (2, 2 ) sollten die Werte enthalten, myArray (2,1, 2 ) zu myArray (2,80,)
...
Zelle (30, 2 ), die Werte enthalten sollte myArray (30,1, 2) myarray (1,80,)
usw ..
Kurz gesagt, jede Zelle in der Tabelle sollte aus dem Array extrahieren Drop Listen mit Daten enthalten (die jeweils Spalte der Tabelle enthält Werte von einer anderen Seite des Arrays).
Ich entschuldige mich, wenn meine Frage nicht genau angegeben ist, bin ich neu zu programmieren und habe wenig Erfahrung mit VBA.
Scheint, dass dies den Trick tun wird. Nur noch eine Sache, die ich noch nicht verstehen kann: Wie verwende ich join() nur für einen Teil eines Arrays? Sagen Sie die erste Spalte – Sergey
Diese Beispiellösung erstellt die Zeichenfolge durch Anwenden der Join() - Funktion auf das gesamte Array und dann iterativ entfernen Zeichenfolge Teile. Alternativ können Sie das Array dynamisch neu erstellen und anschließend die Funktion Join() anwenden. Aufgrund Ihrer Kommentare würde ich mich freuen, wenn Sie die Antwort akzeptieren. Sollten Sie weitere Fragen haben, posten Sie diese bitte separat, fügen Sie Ihr Code-Snippet hinzu und markieren Sie den problematischen Teil. Viel Glück mit Ihrem Projekt. Mit freundlichen Grüßen, –
Vielen Dank (= – Sergey