src: http://www.debugpoint.com/2014/09/libreoffice-workbook-worksheet-and-cell-processing-using-macro/
LibreOffice巨集筆記:LibreOffice Workbook Worksheet and Cell Processing using Macro
(讀三個工作表(sheets)後顯示在彈跳視窗的巨集。)
Sub processing_sheets_cells dim my_doc as object Dim my_sheets as object Dim my_cell as object Dim sheet_count, i, row, col, cell_value, str '設定 my_doc 為現在開啟的workbook '設定 my_sheets 以陣列方式存取 workbook 的全部 sheets '為了存取他們我們必須使用 Sheets(subsrcipt) 像 sheets(0), sheets(1)等,注意此subscript是從0開始 my_doc = ThisComponent my_sheets = my_doc.Sheets sheet_count = my_sheets.Count '設定i從0開始 for i = 0 to sheet_count - 1 '每一段要給間隔 str = str & chr(13) & "--------" & chr(13) '列(水平)開始值為 1 for row=1 to 4 '欄(垂直)開始值為 0 for col=0 to 1 '一旦透過 sheets(subscript)掌握了sheets,利用getCellByPostion方法存取每個個別的儲存格。 my_cell = ThisComponent.Sheets(i).getCellByPosition(col,row) '每個個別儲存格的定義由內容定義(例如:如果你放了數字,則此儲存格為數字類別。) '在LO中對Cell.Type有一系列的枚舉,所以為存取例子中的資料,設定如下: Select Case my_cell.Type Case com.sun.star.table.CellContentType.VALUE cell_value = my_cell.Value Case com.sun.star.table.CellContentType.TEXT cell_value = my_cell.String End Select str = str & " " & cell_value next col str = str & Chr(13) next row next i msgbox str End Sub
文章標籤
全站熱搜
留言列表