0

我需要从 oOcalc 工作簿中收集和整理数据。部分信息显示为单元格上的注释。

我想不出一个公式来做到这一点,而且我不熟悉 oOcalc DOM 来操作该项目。

希望有人可以帮助我。谢谢。

4

1 回答 1

1

只需要自己弄清楚这个,所以这里有一个宏,它将把一张表中单元格的注释复制到另一张表中的实际单元格中。它可能会更好,但它完成了工作,所以它不值得再投入(我的)时间了!

REM ****** BASIC *********

Sub ExtractCommentAnnotationThings

Dim myDoc as Object
Dim originalSheet as Object
Dim newSheet as Object
Dim originalCell as Object
Dim newCell as Object
Dim commentString As String

REM DEFINE VAR FOR OUR LOOP
Dim iTargetRow, iTargetColumn As Long

Const kEndRow = 950
Const kEndColumn = 20

REM SET DOC
myDoc = ThisComponent

REM GET SHEET
originalSheet = myDoc.Sheets(0)
newSheet = myDoc.Sheets(1)

REM START LOOP
For iTargetRow = 0 To kEndRow: DoEvents
For iTargetColumn = 0 To kEndColumn: DoEvents
    originalCell = originalSheet.getCellByPosition(iTargetColumn,iTargetRow)
    REM commentString = Trim(originalCell.Comment.Text)
    If originalCell.Annotation.isVisible = True Then

        commentString = originalCell.getAnnotation().String

        newCell = newSheet.getCellByPosition(iTargetColumn,iTargetRow)
        newCell.String = commentString
    End If      
Next
Next
REM CONTINUE LOOP

End Sub

kEndRow和设置kEndColumn为仅包含要复制的单元格范围。适当地设置originalSheetand newSheet(可能需要先创建一个新工作表),以便将它们复制到您希望它们所在的位置。

希望能帮助到你!

于 2013-02-01T01:54:09.523 回答