1

我正在尝试编写一个宏,该宏从当前选定的单元格中获取一个字符串,并将该字符串的修改版本放入选定单元格左侧的单元格中。

到目前为止,我的 Google-fu 已经让我获得了所选单元格的内容并操纵了字符串,因此它准备好进入左侧的单元格,如下所示:

oCell = ThisComponent.getCurrentSelection()
dim d1 as string
dim d2 as string
dim d3 as string
dim d4 as string
dim d5 as string

d1=oCell.getString()
d2=mid(d1,1,2)
d3=mid(d1,4,2)
d4=mid(d1,7,4)
d5=d4+d3+d2

但我不知道如何放入d5单元格左侧oCell

我什至还没有开始研究如何使它适用于一系列选定的单元格,我想我会先让它适用于一个单元格:)

4

1 回答 1

2

OpenOffice API 的一个很好的资源是 Andrew Pitonyak 所著的OpenOffice Macros Explained一书,可从他的网站免费下载。

另一个资源是 Xray 工具,可从Bernard Marcelly 的网站获得。下面是 Xray 工具检查 oCell 对象的图片,显示它有一个方法,该方法.getCellAddress返回一个具有属性ColumnRow和的结构Sheet

oCell 的 X 射线

知道了这一点,您可以看到类似这样的代码会将您带到左侧的单元格(当然,您需要添加一个错误检查,以确保您尚未位于最左侧的列):

oAddress = oCell.getCellAddress()
oLeftCell = ThisComponent.Sheets(oAddress.Sheet).getCellByPosition(oAddress.Column-1,oAddress.Row)
oLeftCell.setString(d5)
于 2016-01-08T19:22:10.503 回答