von mamo » Do, 15.11.2012 12:28
Hallo Leute,
ich habe ein Makro im Forum gefunden mit dem ich super Timestamps anlegen kann. Leider kann ich diese immer nur vom ersten Tabellenblatt nutzen....in den anderen wird er ignoriert.
Code: Alles auswählen
REM ***** BASIC *****
global ocell as object, bfound as boolean
Sub S_get_right_cell
bfound=false
oselection=thiscomponent.currentselection
osheet=thiscomponent.currentcontroller.activesheet
oCellRange = oSheet.getCellRangeByName("D11:E41")'aktiver Bereich in dem die Änderungen vorgenommen werden sollen
if oSelection.supportsService("com.sun.star.sheet.SheetCell") then
oCellsRangeAddress = oSelection.RangeAddress
if oCellRange.queryIntersection(oCellsRangeAddress).count = 1 then'Die selektierte Celle liegt in dem benannten Bereich
nRow = oselection.rangeaddress.Endrow
nColumn = oselection.rangeaddress.Endcolumn
ocell = osheet.getcellbyposition(nColumn+12, nRow)'nColumn+12 heißt, das Datum wird in der Spalte+12 rechts von der gänderten Zelle eingetragen
bfound=true
endif
endif
End Sub
Sub S_insert_Date_on_modify
if bfound=true then ocell.value = now()
end sub
könnt ihr mir bitte einen Hinweis geben warum das so ist.
Danke
Hallo Leute,
ich habe ein Makro im Forum gefunden mit dem ich super Timestamps anlegen kann. Leider kann ich diese immer nur vom ersten Tabellenblatt nutzen....in den anderen wird er ignoriert.
[code]REM ***** BASIC *****
global ocell as object, bfound as boolean
Sub S_get_right_cell
bfound=false
oselection=thiscomponent.currentselection
osheet=thiscomponent.currentcontroller.activesheet
oCellRange = oSheet.getCellRangeByName("D11:E41")'aktiver Bereich in dem die Änderungen vorgenommen werden sollen
if oSelection.supportsService("com.sun.star.sheet.SheetCell") then
oCellsRangeAddress = oSelection.RangeAddress
if oCellRange.queryIntersection(oCellsRangeAddress).count = 1 then'Die selektierte Celle liegt in dem benannten Bereich
nRow = oselection.rangeaddress.Endrow
nColumn = oselection.rangeaddress.Endcolumn
ocell = osheet.getcellbyposition(nColumn+12, nRow)'nColumn+12 heißt, das Datum wird in der Spalte+12 rechts von der gänderten Zelle eingetragen
bfound=true
endif
endif
End Sub
Sub S_insert_Date_on_modify
if bfound=true then ocell.value = now()
end sub[/code]
könnt ihr mir bitte einen Hinweis geben warum das so ist.
Danke