Zellbereich auslesen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Zellbereich auslesen

Re: Zellbereich auslesen

von turtle47 » Di, 18.11.2008 12:32

Hi Friedhelm,
Hömmelmann hat geschrieben:jetzt hab' ich es begriffen und es funktioniert auch.
Was hast Du jetzt begriffen?
komma4 hat geschrieben:Ohne XRay kommst Du nicht weit, Friedhelm.
oder
turtle47 hat geschrieben:mit
Code: Alles auswählen
getDataArray()holt man sich automatisch ein mehrdimensionales Array,
auch wenn man nur eine Spalte einliest!
Dieses muss man zuerst auf die erste Dimension (0) "runterschrauben".
Jürgen

Re: Zellbereich auslesen

von Hömmelmann » Di, 18.11.2008 07:54

Hallo,
jetzt hab' ich es begriffen und es funktioniert auch.

Danke,
Friedhelm

Re: Zellbereich auslesen

von komma4 » Mo, 17.11.2008 23:06

Ohne XRay kommst Du nicht weit, Friedhelm.

Re: Zellbereich auslesen

von turtle47 » Mo, 17.11.2008 21:03

Hallo Friedhelm,

mit

Code: Alles auswählen

getDataArray()
holt man sich automatisch ein mehrdimensionales Array,
auch wenn man nur eine Spalte einliest!
Dieses muss man zuerst auf die erste Dimension (0) "runterschrauben".

Code: Alles auswählen

Sub Array_auslesen()
	x  = ThisComponent.Sheets().getByIndex(0).getCellRangeByName("A1:A4").getDataArray()
	for i = 0 to UBound(x)
	Daten = x(i)(0)' 0 = erste Dimension
	msgbox daten 
	next i
End Sub
Das Thema wurde hier schon einmal behandelt.

Viel Erfolg.

Jürgen

Re: Zellbereich auslesen

von Hömmelmann » Mo, 17.11.2008 19:19

Wir kommen uns langsam näher:

jetzt läufts bis "xray aInhalt( i )"
Dann meldet OO eine nicht definierte Sub- oder Function-Prozedur.
Ich muss gestehen, mir sagt xray auch nichts.


Friedhelm

Re: Zellbereich auslesen

von komma4 » Mo, 17.11.2008 19:09

Da war ein Tippfehler im Code... der sowieso nur läuft, wenn Du hast.

Arrays sind null-basiert aInhalt(0) bis aInhalt(3).
Sieh Dir den genannten Beispielcode an.

Re: Zellbereich auslesen

von Hömmelmann » Mo, 17.11.2008 18:52

Danke erstmal.

So ganz ist mir allerdings noch nicht geholfen (das Brett vor meinem Kopf ist deutsche Eiche!):

Ja, ich meine mit Inhalt(4) natürlich eine Array-Variable

Bei der Ausführung deines Codes bekomme ich bei der Zeile: "For i = LBound( aInhalte ) To UBound( aInhalte )" einen Laufzeitfehler: Objektvariable nicht belegt.

Kann ich davon ausgehen, dass in deinem Code der Inhalt der Zellen A1 bis A4 dann in der Array-Variable "aInhalte(1)" bis "aInhalte(4)" gespeichert ist?


Gruß, Friedhelm

Re: Zellbereich auslesen

von komma4 » Mo, 17.11.2008 17:36

Wenn Du mit Inhalt(4)*** eine Arrayvariable meinst:

Code: Alles auswählen

aInhalt = _
ThisComponent.Sheets().getByName( "Tabelle2" ).getCellRangeByName( "A1:A4" ).getDataArray()
For i = LBound( aInhalt ) To UBound( aInhalt )
   xray aInhalt( i ) 
Next i
getDataArray() gibt ein Array von Arrays zurück!

War dies das Gesuchte, Friedhelm? Wenn ja, dann findest Du ein Beispiel für get-/setDataArray() bspw. im Code meiner Extension OOoDIL - DokumentInfoListe

Hilft das weiter?



***
A1 bis A4 sind vier Zellen, eine OOo StarBasic Dimensionierung beginnt bei 0 (default), also wäre DIM Inhalt(3) ausreichend

Zellbereich auslesen

von Hömmelmann » Mo, 17.11.2008 16:49

Hallo,


ich möchte einen Zellbereich (z.B. A1:A4) in eine indizierte Variable z.B. Inhalt (4) einlesen.
Ich kenne dafür natürlich die Möglichkeit, die Zellen einzeln auszulesen und in die Variable zu übertragen.
Es müsste aber doch auch eine Möglichkeit geben, den ganzen Bereich in einem Rutsch rüber zu bringen.


Danke für Antwort

Friedhelm

Nach oben