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

array merken und wieder verwenden

array merken und wieder verwenden
29.04.2022 17:14:51
Sati
Hallo Spezialisten - hab da eine Frage:
Auf einem Userform sind 20 Buttons mit einer Multiselect ListBox (ListBox_1) platziert. Wird eine der Tasten (z.B. CommandButton_1) gedrückt, wird der Inhalt eines mit dieser Taste "verbundenen" arrays (z.B. Datenarray_1) in die zentrale und für alle Buttons und somit arrays zu verwendende ListBox geschrieben. Nun hat der User die Möglichkeit mehrere Idems zu selektieren.
Mit dem Event (ListBox_1_Exit..) erkenne ich das Verlassen der ListBox und soll die selektierten Idems in die zweite Dimension des zuvor verwendeten arrays (hier in diesem Beispiel Datenarray_1) schreiben.
Meine Frage hierzu -> wie weiß ich wie das zuletzt verwendet array (hier Datenarray_1) lautet - denn es gibt ja je Button immer ein eigenes array in die entsprechenden selektierten Items geschrieben werden müssen ....
Ersuche um eure Tipps und Hilfestellung,
Danke Sati

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: array merken und wieder verwenden
29.04.2022 17:33:53
Oberschlumpf
Hi,
benutze eine zusätzliche Tabelle, damit du die Inhalte der Arrays zwischenspeichern und bei Bedarf wieder einlesen kannst.
Die Tabelle kann auch ausgeblendet sein - sie muss ja nicht für jeden sichtbar sein; dient ja nur für dich und der Datenverwaltung.
Mit "zusätzlicher Tabelle" meine ich ein zusätzliches Tabellenblatt; nicht einen anderen Zellbereich, der in schon verwendeten Tabellenblättern noch unbenutzt ist!
Ciao
Thorsten
AW: array merken und wieder verwenden
29.04.2022 17:37:34
Piet
Hallo
verwende ein zusätzliches Label in der UserForm und schreibe dort hinein welches Array aktuell geladen wurde.
Du kannst auch zwei Labels verwenden und das davor verwendete Array mit notieren.
mfg Piet
Anzeige
AW: array merken und wieder verwenden
29.04.2022 18:57:18
sati
Das mit dem zwischenspeichern des array Namens ist eine Möglichkeit. Wie kann ich nach dem Rücklesen des Inhalts des Labels (string) diesen als array verwenden?
Dim strTest As String
strTest = Label99 ' string aus dem Label rücklesen
strTest (1,80) = "Test" ' Dies funktioniert natürlich nicht - wie könnte dies funktionieren?
AW: array merken und wieder verwenden
29.04.2022 17:51:08
snb
Ich würde ein Spinbutton, statt 20 Buttons verwenden.
AW: array merken und wieder verwenden
29.04.2022 18:06:51
sati
Danke für die Infos,
@Thorsten - das mit dem zwischenspeichern der array Daten in eine Tabelle funktioniert so leider nicht - denn ich muss die Daten in das zuvor beim Auslesen verwendete Array in die zweite Dimenson hinzufügen - nur so stehen in weiterer Folge die unterschiedlichen Daten auch zur Verfügung.
@Piet - das mit dem zwischenspeichern des array Namens ist eine Möglichkeit. Wie kann ich nach dem Rücklesen des Inhalts des Labels (string) diesen als array verwenden?
Anzeige
AW: array merken und wieder verwenden
29.04.2022 18:19:09
Daniel
Hi
kennst du das Konzept "Array in Array"?
ein Array kann nicht nur normale Einzelwerte aufnehmen, sondern auch aus weiteren Arrays bestehen!
du könntest also deine 20 einzelnen Arrays in ein MasterArray einhängen und dann mit diesem arbeiten.
am Anfang würde also sowas stehen:

dim MasterArray(1 to 20)
MasterArray(1) = DatenArray_1
MasterArray(2) = DatenArray_2
usw
um dann mit den einzelnen Arrays oder Arraywerten zu arbeiten, kannst du diese entweder zunächst in ein weiteres Array zwischenspeichen:

xxx = MasterArry(1)
xxx(1, 1) = "Hallo Welt"
MasterArray(1) = xxx
oder du kannst auch direkt auf die Einzelwerte zugreifen mit MasterArry(1)(1, 2) (ob das auch schreibend geht, müsstest du mal testen, lesend auf jeden fall)
dh jeder Button schreibt dann einfach seine Nummer in eine Variable, dann weißt du mit welchem Array du arbeiten musst.
Gruß Daniel
Anzeige
AW: array merken und wieder verwenden
29.04.2022 18:31:21
Sati
Hallo Daniel,
die Idee ist gut - aber wenn sich einzelne Daten ändern bzw. hinzukommen wird mit ReDim das entsprechende array (eines der 20) angepasst bzw. neu erstellt.
Übernimmt das MasterArry dies automatisch (mit z.B. MasterArray(1) = DatenArray_1) oder muss das MasterArry neu aufgebaut werden?
AW: array merken und wieder verwenden
29.04.2022 18:49:38
Daniel
Wenn du tiefergreifende Änderungen wie redimensionierung machst, musst du wie von mir gezeigt das einzelne Array aus dem MasterArray in ein normales Array über nehmen.
Mit diesem Array machst du dann alle Änderungen und Schreibstil es am Schluss ins MasterArray zurück.
Gruß Daniel
Anzeige
AW: array merken und wieder verwenden
30.04.2022 18:50:37
Mullit
Hallo,
hab dir mal ein Bsp. auf Daniels Grundlage aber mit UD Type zum Ausprobieren gemacht, für den Exit-Effekt auf die Textbox oder einen anderen CmdBtn klicken.
Die Arrays sind noch statisch, aber das kannst Du viell ja selbst weiter einbauen ;-)....
https://www.herber.de/bbs/user/152775.xlsm
Gruß, Mullit
AW: array merken und wieder verwenden
29.04.2022 19:18:14
onur
Was meinst du mit "Datenarray_1"? Womit sind sie gefüllt?
Ausserdem - Kannst du ein Bild der UF posten, damit ich mir das Ganze vorstellen kann?
AW: array merken und wieder verwenden
29.04.2022 21:44:55
Piet
Hallo
Ich nehme an das beim Füllen des Array 1-20 das Lade Makro weiss wo die dazugehörigen Daten stehen.
Wenn du den Array Namen aus dem Label auslist müsste man den vorherigen Wert wieder neu laden können.
Am besten wäre eine Beispieldatei aus der man sehen kann wie dein jetziges Array Makro bisher aufgebaut ist.
mfg Piet
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige