Seite 1 von 1
[gelöst] Zellen innerhalb einer CellRange indizieren
Verfasst: Fr, 05.07.2013 08:48
von TrueColor
Hallo,
ich habe mehrere gleich aufgebaute CellRanges.
Range_1 --> A1:A8
Range_2 --> B1:B8
[...]
Range_5 --> E1:E8
Kann ich (wenn ja, wie?) die Zellen innerhalb der CellRange irgendwie indizieren, so, dass ich die Zellen z.B. mit Schleifen einfacher bearbeiten kann?
Danke!
TrueColor
Re: Zellen innerhalb einer CellRange indizieren
Verfasst: Fr, 05.07.2013 08:59
von bst
Hi,
versuche das mal so.
cu, Bernd
--
Code: Alles auswählen
Sub Main
oSheet = ThisComponent.currentController.ActiveSheet
For i = 0 To 7
For j = 0 To 4
oSheet.GetCellByPosition(j,i).String = "Z" & i+1 & " S" & j+1
Next
Next
End Sub
Re: Zellen innerhalb einer CellRange indizieren
Verfasst: Fr, 05.07.2013 10:52
von TrueColor
Hallo Bernd,
manchmal sieht man den Wald vor lauter Bäumen nicht... ich war total auf meine CellRanges fixiert.
Danke dir!
Grüße
Robert
Re: [gelöst] Zellen innerhalb einer CellRange indizieren
Verfasst: Sa, 06.07.2013 17:35
von F3K Total
Hi,
eine Anmerkung:
Es gibt auch im CellRange ein
wobei die oberste linke Zelle die Indizes (0,0) hat.
Das Makro
Code: Alles auswählen
Sub Main
oSheet = ThisComponent.sheets.getbyname("Tabelle1")
oRange = oSheet.getcellrangebyname ("B12:C24")
oCell = oRange.getcellbyposition(0,0)
msgbox oCell.AbsoluteName
End Sub
gibt.z.B:
- RC1.png (5.91 KiB) 2640 mal betrachtet
Somit kannst Du hiermit jeglichen Zellbereich durchlaufen:
Code: Alles auswählen
Sub Main2
oSheet = Thiscomponent.sheets.getbyname("Tabelle1")
oRange = oSheet.getcellrangebyname ("B12:C24")
for i = 0 to ubound(orange.data)
for k = 0 to ubound (orange.data(0))
oCell = oRange.getcellbyposition(k,i)
msgbox oCell.AbsoluteName
next k
next i
End Sub
Gruß R
Re: [gelöst] Zellen innerhalb einer CellRange indizieren
Verfasst: Mo, 08.07.2013 08:20
von TrueColor
Hallo F3K Total,
das sieht genau nach dem aus, an das ich gedacht hatte.
Eine Frage zum Verständnis: Warum hast du die orange.data (ich hätte ja lieber blaue Daten gehabt *SCNR*) in der k-Schleife indiziert, in der i-Schleife hingegen nicht? Ist die Indizierung bei nur einem Element nicht zwingend notwendig?
Grüße
Robert
Re: [gelöst] Zellen innerhalb einer CellRange indizieren
Verfasst: Mo, 08.07.2013 20:02
von F3K Total
Nun,
oBlue wäre wohl weniger verständlich als oRange (oooo Rändsch).
Da war ich wohl 2F4U.
Darum, AFAIK und FYI:
Mit
liest du das Daten-Array des Zellbereichs aus.
Mit
wiederum den Y-Wert, sprich die Anzahl der Zeilen
Mit
den X-Wert, sprich die Anzahl der Werte in der Zeile mit dem Index 0, also die Anzahl der Spalten.
GL R
Re: [gelöst] Zellen innerhalb einer CellRange indizieren
Verfasst: Mi, 10.07.2013 08:33
von TrueColor
Also werden grundsätzlich immer zuerst die Zeilen ausgelesen, ohne das man das irgendwie explizit angeben muss?
Grüße
Robert
Re: [gelöst] Zellen innerhalb einer CellRange indizieren
Verfasst: Mi, 10.07.2013 18:51
von F3K Total
AFAIK, yes!
R
Re: [gelöst] Zellen innerhalb einer CellRange indizieren
Verfasst: Do, 11.07.2013 14:23
von TrueColor
Danke!
Gruß
Robert