LibreOffice Write Basic 表を挿入するマクロの実験 [LibreOffice Writer Basic]
LibreOffice Write Basic 表を挿入するマクロの実験
OS LinuxMint18Cinnamon64bit
LibreOffice5.2
参考にしたサイト ttp://hermione.s41.xrea.com/pukiwiki/pukiwiki.php?OOoBasic%2FWriter%2Ftable
Sub insert_table2()
'writer 表の挿入
'
Dim oRows ,oColumuns As Integer
'oRows 行数 oColmuns 列数
oRows=6
oColumns=3
oText = ThisComponent.getText()
oTable = ThisComponent.createInstance("com.sun.star.text.TextTable")
oTable.setName("NewTable")
oTable.initialize(oRows,oColumns)
ThisComponent.getText().insertTextContent(oText.getEnd(), oTable, True)
End Sub
LibreOffice Writer basic カーソルのあるページ番号を調べるマクロの実験 [LibreOffice Writer Basic]
LibreOffice Writer basic カーソルのあるページ番号を調べるマクロの実験
OS LinuxMint18Cinnamon64bit
LibreOffice5.2
あまり使い道のないマクロ
.getViewCursor.Page
Sub pageNo()
'writer カーソルのあるページ番号
Dim PageNo As Integer
PageNo= ThisComponent.CurrentController.getViewCursor.page
msgbox PageNo & " ページ"
End Sub
LibreOffice Writer 現在のカーソル位置に今日の日付を挿入するマクロの実験 [LibreOffice Writer Basic]
LibreOffice Writer 現在のカーソル位置に今日の日付を挿入するマクロの実験
以前の記事では日付挿入をマクロの記録で実行したマクロだったが、今回は別の方法で試した。
下のマクロのように3つのパターンを実行すると、現在のカーソル位置で上書きされる。
下の画像はカーソル位置を変えて実行した。
Sub writer_date()
'writer 現在のカーソル位置に今日の日付を挿入する。
ThisComponent.CurrentController.getViewCursor.setString(Date)
'ThisComponent.CurrentController.getViewCursor.setString(Date & " " & Time)
'ThisComponent.CurrentController.getViewCursor.setString(now)
End Sub
Sub writer_date()
'writer 現在のカーソル位置に今日の日付を挿入する。
ThisComponent.CurrentController.getViewCursor.setString(format(Date,"GGGE年M月D日(AAA)")
End Sub
LibreOffice Writer Basic 今日の日付を挿入するマクロ [LibreOffice Writer Basic]
LibreOffice Writer Basic 今日の日付を挿入するマクロ
マクロの記録で取得したマクロ
Sub writer_insert_Date()
'今日の日付を挿入
'
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(5) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Type"
args1(0).Value = 0
args1(1).Name = "SubType"
args1(1).Value = 0
args1(2).Name = "Name"
args1(2).Value = ""
args1(3).Name = "Content"
args1(3).Value = "0"
args1(4).Name = "Format"
args1(4).Value = 10080
args1(5).Name = "Separator"
args1(5).Value = " "
dispatcher.executeDispatch(document, ".uno:InsertField", "", 0, args1())
End Sub