Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Brauche Hilfe bei Array/Listbox


Betrifft: Brauche Hilfe bei Array/Listbox von: KaEmGe
Geschrieben am: 23.08.2019 14:34:40

Hallo,

ich möchte ein Array erstellen, welches die Veränderung von Daten in einer Tabelle widerspiegelt und z.B. folgendermaßen aussieht:

"[Historie](Name,Altwert/Neuwert) | [Historie](Name,Altwert,Neuwert) |..." usw.

[Historie] erscheint in einer Listbox, (Name,Altwert/Neuwert) erscheint nach Doppelklick auf den Listboxeintrag als Msgbox o.ä.

Grund ist, dass die Userform hierfür mobil genutzt wird, und die Datenmenge möglichst klein und übersichtlich bleibt, bzw. nur auf Abruf zusätzlich sichtbar wird.
Die Historie wird aus einer *.csv geladen, um die Tabellengröße klein zu halten.

Soweit meine Idee.
Nun frage ich mich, ob ihr auch so vorgehen würdet oder ob jemand einen Denkanstoß hat, wie das Ganze anders zu bewerkstelligen ist.

Zum Verständnis: Reine Ideensammlung, ich möchte hier keinen kompletten Code einfordern.

  

Betrifft: AW: Brauche Hilfe bei Array/Listbox von: Matthias
Geschrieben am: 24.08.2019 11:26:37

Moin!
M.E. kannst du das so machen. Anstelle der .csv könntest du auch eine .txt nehmen. Dann wäre das Einlesen und Ermitteln ggf. anders. Je nach Größe und wenn es ggf. zu lange dauert, könntest du die Daten auch in einem (ausgeblendeten) Blatt eintragen. Könnten aber ggf. relativ viele Zeilen werden.
Vielleicht hat aber jemand noch andere Ideen.
VG


  

Betrifft: AW: Brauche Hilfe bei Array/Listbox von: Oberschlumpf
Geschrieben am: 25.08.2019 08:14:53

Hi,

du benötigst also keinen Code?
Ok, aber ein Konzept hast du ja schon (so würd ich es wohl auch machen)

Öffnen der Excel-Datei mit Userform
Beim Öffnen der Datei würde ich zuerst die csv-Datei einlesen - und zwar in die 1-spaltige Listbox und in eine 4-dimensionale Array-Variable

4 Dimensionen deshalb, weil...
...ein Array ist wie ein "Container" mit "Schubladen" (so stell ich mir das immer mit Arrays vor)
...einer "Schublade" kannst du so viel zugehörige Werte zuweisen, entsprechend der Anzahl der Dimensionen
...hier benötigst du 4 Dimensionen für 1 Historie 2 Name 3 Altwert 4 Neuwert

Dimension 1 ist hier der Suchwert und erscheint sowohl in der Listbox, als auch in dem Array.

Doppelklick auf einen Eintrag in der Listbox
Nach dem du einen Listboxeintrag doppelt angeklickt hast, wird das Array mittels eines Schleifendurchlaufs nach dem angelickten Listboxeintrag durchsucht.
Wenn gefunden, werden die zugehörigen Einträge aus der Array-"Schublade" in einer MsgBox angezeigt.

Fertig.

Hilft meine etwas andere Darstellung deiner Gedanken?

Ciao
Thorsten


  

Betrifft: AW: Brauche Hilfe bei Array/Listbox von: KaEmGe
Geschrieben am: 26.08.2019 09:19:41

Hi,

das wäre auf jeden Fall viel übersichtlicher!
Das werde ich so umsetzen.
Vielen Dank an euch


  

Betrifft: hab noch ne andere Idee von: Oberschlumpf
Geschrieben am: 26.08.2019 11:27:33

Hi,

oder du definierst in der Listbox 4 Spalten, von denen nur eine Spalte sichtbar ist.
So kannst du jeder Zeile in der Listbox die zugehörigen werte direkt zuweisen, und musst parallel nicht zusätzlich ein Array verwalten.

Hilfts?

Ciao
Thorsten