【问题标题】:How can I find a text in a spreadsheet using OObasic?如何使用 OObasic 在电子表格中查找文本?
【发布时间】:2013-05-04 19:20:18
【问题描述】:

在 OpenOffice 文档 [1] 中,我找到了一个替换示例。但我没有找到搜索示例。

Dim Doc As Object
Dim Sheet As Object
Dim ReplaceDescriptor As Object
Dim I As Integer

Doc = ThisComponent
Sheet = Doc.Sheets(0)

ReplaceDescriptor = Sheet.createReplaceDescriptor()
ReplaceDescriptor.SearchString = "is"
ReplaceDescriptor.ReplaceString = "was"
For I = 0 to Doc.Sheets.Count - 1
   Sheet = Doc.Sheets(I)
   Sheet.ReplaceAll(ReplaceDescriptor) 
Next I

更好:在哪里可以找到列出范围/单元格可能方法的文档?

[1]http://wiki.openoffice.org/wiki/Documentation/BASIC_Guide/Editing_Spreadsheet_Documents

【问题讨论】:

    标签: libreoffice openoffice-basic libreoffice-basic


    【解决方案1】:

    首先:https://wiki.openoffice.org/wiki/Extensions_development_basic 是一个很好的起点。特别是 XRAY 工具非常有用。

    以下代码显示了一个搜索示例:

    Dim oDoc As Object
    Dim oSheet As Object
    Dim oSearchDescriptor As Object
    Dim i As Integer
    
    oDoc = ThisComponent
    oSheet = oDoc.Sheets(0)
    
    oSearchDescriptor = oSheet.createSearchDescriptor()
    oSearchDescriptor.SearchString = "is"
    For i = 0 to oDoc.Sheets.Count - 1
       oSheet = oDoc.Sheets(i)
       oResults = oSheet.findAll(oSearchDescriptor)
       'xray oResults
       if not isnull(oResults) then msgbox oResults.AbsoluteName
    Next i
    

    如果您安装了 XRAY,则可以使用它检查每个对象,并且可以访问相关的 API 文档。

    问候

    阿克塞尔

    【讨论】:

    • 感谢您回复阿克塞尔。我确实使用 XRAY - 但是有太多的方法和属性,很难找到一个特定的。此外,由于类继承,文档非常细化,并没有显示特定类的所有可能方法。无论如何,我会尽快尝试您的解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多