AW: array in array oder in dictionary ändern geht nicht
daniel
Hi
ich bin da jetzt auch kein Kenner der Programmierung einer Programmiersprache, aber ich vermute folgendes:
egal was du hast, (mehrdimensionales Array, Array im Array, Dicionary) in intern kann VBA die Daten immer nur sequentiell (also als eindimensionales Array) ablegen.
die Mehrdimensionalität wird dann dadurch simuliert, dass die Werte in dieser Sequenz an festen Positionen liegen.
vereinfacht kann man sich das so vorstellen, als würde man Schiffe-Versenken auf einem Zollstock spielen, hierbei wäre dann cm1-10 die Spalte A, cm 11-20 die Zeile B , cm 21-30 die Spalte C usw
alle Änderungen im Array, die jetzt Einfluss auf die Positionierung der Einzelwerte in der Ablagesequenz haben oder haben könnten, können jetzt nicht mehr auf dem direkten Weg durchgeführt werden, sondern müssen den umständlichen Weg gehen, weil ja dann die Werte auf neue Speicherpositionen geschoben werden müssen und die "Landkarte" (welcher Wert steht neu im Speicher) neu erstellt werden muss.
um beim Beispiel zu bleiben, wenn du jetzt beschließt, dass die Spalte A nicht mehr 10 sondern 11 Elemente haben soll, dann würden sich die Positionen aller anderen Werte verschieben ("B1" ist dann nicht mehr cm11, sondern cm12 usw.
die dazu notwendigen Abläufe finden eben beim neu erstellen statt, daher muss man dann diesen Weg gehen.
Gruß Daniel