De macro hieronder (OooCalc) kopieert een cellenbereik van een blad naar een ander in hetzelfde werkblad. Het nadeel is dat bij het kopieren van meerdere bereiken het resultaat op het scherm flikkert van het ene blad (bron) naar het andere (doel). Dat komt doordat ik beide bladen in de macro afwisselend selecteer. Hoe kan ik dit aanpassen zodat ik het doelblad alsook het bronblad niet meer moet kiezen.
Leo
Sub CopyRange
dim oDoc as object, oDisp as object
dim oSourceSheet as Object, oSourceRange as Object, Sheets as Object
dim oTargetSheet as Object, oTargetRange as Object
Counter1 = 20
oDoc = ThisComponent
oDisp = createUnoService("com.sun.star.frame.DispatchHelper")
oSourceSheet = oDoc.Sheets.getByName("Leo")
oSourceRange = oSourceSheet.getCellRangeByName("$H$2:$J$" & Counter1)
octl = ThisComponent.getCurrentController()
octl.Select(oSourceRange)
oDisp.executeDispatch(octl, ".uno:Copy", "", 0, NoArg())
oTargetSheet= oDoc.Sheets.GetByName("Details")
oTargetCell = oTargetSheet.getCellByPosition (0,2)
octl.Select(oTargetCell)
oDisp.executeDispatch(octl, ".uno
aste", "", 0, NoArg())
End Sub
Leo
Sub CopyRange
dim oDoc as object, oDisp as object
dim oSourceSheet as Object, oSourceRange as Object, Sheets as Object
dim oTargetSheet as Object, oTargetRange as Object
Counter1 = 20
oDoc = ThisComponent
oDisp = createUnoService("com.sun.star.frame.DispatchHelper")
oSourceSheet = oDoc.Sheets.getByName("Leo")
oSourceRange = oSourceSheet.getCellRangeByName("$H$2:$J$" & Counter1)
octl = ThisComponent.getCurrentController()
octl.Select(oSourceRange)
oDisp.executeDispatch(octl, ".uno:Copy", "", 0, NoArg())
oTargetSheet= oDoc.Sheets.GetByName("Details")
oTargetCell = oTargetSheet.getCellByPosition (0,2)
octl.Select(oTargetCell)
oDisp.executeDispatch(octl, ".uno

End Sub