自由办公室,清理范围
Libre Office, Clearing a Range
我一直在网上寻找如何访问一个范围然后 "clearing" 它的想法。遗憾的是,即使我找到了几种解决方案,自由办公室中的 vba 让事情变得非常难以理解。我试着录制一个宏,并对其进行编辑……它可以工作,但不是我想要的那样。我需要从窗体(对话框)执行下面的代码,它完成了它的意思,但在后台显示了所有内容,我不能那样......有没有办法做到这一点?例如在 vba Exel 中我会写:
Range("A1:DA25000").ClearContents (or .Delete)
这是我录制的宏:
Function Brisanje()
dim document as object
dim dispatcher as object
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Nr"
args1(0).Value = 2
dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args1())
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "$A:$DA000"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())
dispatcher.executeDispatch(document, ".uno:ClearContents", "", 0, Array())
end Function
您要查找的代码在 Andrew Pitonyak's macro document 部分 6.4. Clear a cell
中。请注意,该代码也适用于多个单元格:
REM You can use a range such as "A1:B2"
宏录制不是学习如何编写宏的好方法。它们生成调度程序代码,这与使用 UNO API.
不同
我一直在网上寻找如何访问一个范围然后 "clearing" 它的想法。遗憾的是,即使我找到了几种解决方案,自由办公室中的 vba 让事情变得非常难以理解。我试着录制一个宏,并对其进行编辑……它可以工作,但不是我想要的那样。我需要从窗体(对话框)执行下面的代码,它完成了它的意思,但在后台显示了所有内容,我不能那样......有没有办法做到这一点?例如在 vba Exel 中我会写:
Range("A1:DA25000").ClearContents (or .Delete)
这是我录制的宏:
Function Brisanje()
dim document as object
dim dispatcher as object
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Nr"
args1(0).Value = 2
dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args1())
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "$A:$DA000"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())
dispatcher.executeDispatch(document, ".uno:ClearContents", "", 0, Array())
end Function
您要查找的代码在 Andrew Pitonyak's macro document 部分 6.4. Clear a cell
中。请注意,该代码也适用于多个单元格:
REM You can use a range such as "A1:B2"
宏录制不是学习如何编写宏的好方法。它们生成调度程序代码,这与使用 UNO API.
不同