Cursorposition in Variable speichern

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: Cursorposition in Variable speichern

von openmind » Do, 08.01.2004 18:07

openmind hat geschrieben:Hinwiese siehe Code:

Code: Alles auswählen

Sub selektierteZellen
        Dim calcDokument as Object
        Dim selektion as Object
        
        calcDokument = ThisComponent
        selektion = calcDokument.getCurrentSelection()

        If selektion.supportsService( _
        	"com.sun.star.sheet.SheetCell" ) then

			' !!!!!!!
			' selektion = zelle
			' !!!!!!!!!!!!!!!!!!
			
                	selektion.Text =  "ich bin hier"                

        End If
End Sub

von Toxitom » Do, 08.01.2004 17:00

Hallo Loxlay,

versuchs mit dem Code:

Code: Alles auswählen

sub getCellPosition
       oDoc=thisComponent
       ' aktive Zelle
       oCelle=oDoc.getCurrentSelection().getCellAddress()
        ' aktives Tabellenblatt
        oSheet=oDoc.sheets(oCelle.Sheet)
         ' aktuelle Zeile, Index
         oRow=oCelle.Row
         '  aktuelle Spalte, Index
          oColumn=oCelle.column
end sub
Das liefert dir den Index der aktuellen Zelle, aber denk dran: Indices beginnen bei 0!

Gruss
Thomas

von Loxlay » Do, 08.01.2004 16:24

Danke für deine schnelle Antwort, aber mein Problem ist damit immer noch nicht gelößt.
Ich möchte ja wissen, in welcher Zelle der Cursor gerade ist also ob er in A6 oder D4 oder B2 usw. ist.

von openmind » Do, 08.01.2004 14:23

Hinwiese siehe Code:

Code: Alles auswählen

Sub selektierteZellen
        Dim calcDokument as Object
        Dim selektion as Object
        
        ' aktuelles Dokument holen
        calcDokument = ThisComponent
        ' aktuelle Selektion holen
        selektion = calcDokument.getCurrentSelection()
        
        ' Selektion kann null(?), eine einzelne Zelle, 
        ' ein einzelner oder mehrere Zellbereiche sein
        If IsNull( selektion ) then
                	' keine Selektion (überhaupt möglich? wie?)
                	MsgBox "Keine Selektion"

        Elseif selektion.supportsService( _
        	"com.sun.star.sheet.SheetCell" ) then
        		' einzelne Zelle selektiert
                	MsgBox "Einzelne Zelle selektiert"                

        Elseif selektion.supportsService( _
        	"com.sun.star.sheet.SheetCellRange" ) then
        		' einzelner Zellbereich selektiert
                	MsgBox "Einzelner Zellbereich selektiert"

        Elseif selektion.supportsService( _
        	"com.sun.star.sheet.SheetCellRanges" ) then
        		' mehrere Zellbereiche selektiert
                	MsgBox "Mehrere Zellbereiche selektiert"
        End If
End Sub

Cursorposition in Variable speichern

von Loxlay » Do, 08.01.2004 14:01

Hallo Zusammen,

ich möchter gerne in einem Makro für OO Calc immer in der Spalte "C" in der Zeile etwas eintragen, wo sich der Cursor gerade im im Sheet befindet.
Dabei kann der Cursor natürlich in einer beliebigen Spalte stehen, da mich hier nur die Zeile interessiert.
Dazu brauche ich irgendwie die Zeilenposition des Cursors, aber wie komme ich in meinem Makro an diese ?

Nach oben