von howtoman » Di, 12.06.2012 23:14
das mit Hochkommas, wusste ich übrigens nicht dass die werte OHNE übertragen werden.
Das problem ist, dass ich auch manchmal formeln habe.
Ich mach jetzt ein anderes Beispiel.
Das geht übrigens (mit getFormulaArray, setFormulaArray):
Code: Alles auswählen
Dim oSheet, oSheet2, dok1 as object, dok2 as object
dok1 = getOpenedDocByTitle("dokFrom", 1) 'unwichtig hier, also einfach geoeffnetes dokument.
dok2 = getOpenedDocByTitle("dokTo", 1)
oSheet = dok1.sheets(0)
oSheet2 = dok2.sheets(0)
array2d = oSheet.getCellRangeByName("A2:D2").getFormulaArray()
'array2d(0)(2) = Cstr("105.04.12") ' falls ich etwas ändern will, wird eine zahl eingesetzt.
oSheet2.getCellRangeByName("A2:D2").setFormulaArray(array2d)
so, wenn man manuel den Array erstellt, oder etwas ändert, werden Zahlen statt Datumstext eingefügt.
Code: Alles auswählen
' dim array2d(0,3)
' array2d(0,0) = "05.04.12"
' array2d(0,1) = "15.04.12"
' array2d(0,2) = "105.04.12"
' array2d(0,3) = "=B2"
Auch als array of arrays
Code: Alles auswählen
array2d= Array((Array( "05.04.12", "15.04.12", "105.04.12", "=B2"))
das sind die Beispielinhalte die ich übertragen will (formeln, datum, texte ...), die zwischendurch in Arrays und Objects ("Type") gespeichert und bearbeitet werden.
Noch etwas habe ich bemerkt, beim getFormulaArray() wird ein Object zuruckgegeben, beim Array Erstellen wird Variant (laut Debugger) zuruckgegeben.
Beim ändern eines Wertes nach dem getFormulaArray(), bleibt die variable "Object" eingefügt wird aber genau das geänderte Wert falsch :/
Kann es sein dass man beim Object das man mit "getFormulaArray()" erhält, irgendwie anders die Daten drin ändern kann?
*Und danke für die Antworten und Lösungsversuche!
das mit Hochkommas, wusste ich übrigens nicht dass die werte OHNE übertragen werden.
Das problem ist, dass ich auch manchmal formeln habe.
Ich mach jetzt ein anderes Beispiel.
Das geht übrigens (mit getFormulaArray, setFormulaArray):
[code]Dim oSheet, oSheet2, dok1 as object, dok2 as object
dok1 = getOpenedDocByTitle("dokFrom", 1) 'unwichtig hier, also einfach geoeffnetes dokument.
dok2 = getOpenedDocByTitle("dokTo", 1)
oSheet = dok1.sheets(0)
oSheet2 = dok2.sheets(0)
array2d = oSheet.getCellRangeByName("A2:D2").getFormulaArray()
'array2d(0)(2) = Cstr("105.04.12") ' falls ich etwas ändern will, wird eine zahl eingesetzt.
oSheet2.getCellRangeByName("A2:D2").setFormulaArray(array2d)[/code]
so, wenn man manuel den Array erstellt, oder etwas ändert, werden Zahlen statt Datumstext eingefügt.
[code]
' dim array2d(0,3)
' array2d(0,0) = "05.04.12"
' array2d(0,1) = "15.04.12"
' array2d(0,2) = "105.04.12"
' array2d(0,3) = "=B2"
[/code]
Auch als array of arrays
[code]
array2d= Array((Array( "05.04.12", "15.04.12", "105.04.12", "=B2"))
[/code]
das sind die Beispielinhalte die ich übertragen will (formeln, datum, texte ...), die zwischendurch in Arrays und Objects ("Type") gespeichert und bearbeitet werden.
Noch etwas habe ich bemerkt, beim getFormulaArray() wird ein Object zuruckgegeben, beim Array Erstellen wird Variant (laut Debugger) zuruckgegeben.
Beim ändern eines Wertes nach dem getFormulaArray(), bleibt die variable "Object" eingefügt wird aber genau das geänderte Wert falsch :/
Kann es sein dass man beim Object das man mit "getFormulaArray()" erhält, irgendwie anders die Daten drin ändern kann?
*Und danke für die Antworten und Lösungsversuche!