StarBasic FAQWissen, das weiterhilft.

Tabellen - Calc

Wie kann man prüfen, ob Zellen oder Bereiche in der aktuellen Selektion sind?

Wenn man mit getCurrentselction() den vom Anwender markierten Bereich auswählt, kann es sich dabei in einer Tabelle um verschiedene Bereiche handeln:

     eine Zelle,
     ein Bereich,
     oder mehrere Bereiche.

Um nun herauszubekommen mit welcher Art man es zu tun hat, muss man diese Selektion auf die entsprechenden Services prüfen.

Basic
     oCalc = thisComponent
     oSel=oCalc.getCurrentselection()
     if oSel.supportsService("com.sun.star.sheet.SheetCell") then
        'Der Cursor ist einer Zelle
        MsgBox "Eine Zelle markiert"     
       elseif oSel.supportsService("com.sun.star.sheet.SheetCellRange") then
         ' Ein Bereich
        MsgBox "Ein Bereich wurde markiert"      
       elseif oSel.supportsService("com.sun.star.sheet.SheetCellRanges") then
        'Mehrere Bereiche
       MsgBox "Mehrere Bereiche wurden markiert"                         
   end if


Siehe dazu auch unter Tools die Funktion getSelTyp