So-net無料ブログ作成
LibreOffice Writer Basic ブログトップ
前の5件 | -

LibreOffice Writer ページの挿入?追加をするマクロの実験 [LibreOffice Writer Basic]

LibreOffice Writer ページの挿入?追加をするマクロの実験
 
OS LinuxMint 19 cinnamon 64bit
LibreOffice 6.1.0.3
 
カーソル位置の下に新しいページを挿入(追加)するマクロ
お の位置にカーソルを持っていきマクロを実行
page_insert.png
カーソル位置以降の文字「かきくけこ」が挿入された
 
page_insert2.png
 
 
 
Sub page_insert
    'writer Pageの追加
    'カーソル位置の下に新しいページを挿入
    Dim oCtrl As Object
        oCtrl = ThisComponent.getCurrentController()
        oFrame = oCtrl.getFrame()
    'Page Insert
        createUnoService("com.sun.star.frame.DispatchHelper") _
         .executeDispatch(oFrame, ".uno:InsertPagebreak", "", 0, Array())

End Sub

nice!(0)  コメント(0) 
共通テーマ:パソコン・インターネット

LibreOffice6.1 Writer 横線を引くマクロ [LibreOffice Writer Basic]

LibreOffice6.1 Writer 横線を引くマクロ
 
OS LinuxMint19 Cinnamon 64bit
LibreOffice 6.1.0.3
 
メニューバー → 挿入 → 横線
をマクロの記録で取得した。
横線は旧バージョンの水平線ぽい?
sub H_line
'カーソル位置に横線を引く
'
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(2) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Template"
args1(0).Value = "横線"
args1(1).Name = "FamilyName"
args1(1).Value = "ParagraphStyles"
args1(2).Name = "Style"
args1(2).Value = "Horizontal Line"

dispatcher.executeDispatch(document, ".uno:StyleApply", "", 0, args1())


end sub
横線の上に小さな文字を書ける
横線は必ず左端から
LibreOffice Writer_H_line.png
横線の上で右クリック 段落スタイル:横線のプロパティ
設定項目はたくさん有るのですがやり方がよく分かりません。
 
LibreOffice Writer_H_line2.png

nice!(1)  コメント(0) 
共通テーマ:パソコン・インターネット

LibreOffice Writer Basic 表の挿入と項目設定するマクロの実験 [LibreOffice Writer Basic]

LibreOffice Writer Basic 表の挿入と項目設定するマクロの実験

OS LinuxMint18Cinnamon64bit
LibreOffice5.2

無題 1 - LibreOffice Writer_tableCell.png

Sub WriterTableTXT()
'write 3列20行の表を作成、項目テキスト挿入

      Dim oTable As object
      Dim oCurs As object
      Dim oText As object
      Dim oVCurs As object
      Dim oCell  As object
     
        'oText 
            oText = ThisComponent.getText()
          ' 表作成
              oTable = ThisComponent.createInstance("com.sun.star.text.TextTable")
          '20行、3列
              oTable.initialize(20, 3)
         
              oCurs =ThisComponent.getCurrentController().getViewCursor()
              oText.insertTextContent(oCurs, oTable, False)
     
          ' Table 選択
              ThisComponent.getCurrentController().select(oTable)
              oVCurs = ThisComponent.getCurrentController().getViewCursor()
          '
          ' Cursor位置移動,文字列挿入 calc風 列、行
     
            oCell1 = oTable.getCellByPosition(0,0)
            oCell1.string="氏名"
            oCell1 = oTable.getCellByPosition(1,0)
            oCell1.string="TEL"
                oCell1 = oTable.getCellByPosition(2,0)
            oCell1.string="E-mail"
           
End Sub

 


LibreOffice Writer Basic 文末に文字列を挿入するマクロの実験 [LibreOffice Writer Basic]

LibreOffice Writer Basic 文末に文字列を挿入するマクロの実験

OS LinuxMint18Cinnamon64bit
LibreOffice5.2

LibreOffice Writer_gotoEnd.png

 

Sub bunnmatu2()
'writer 文末に文字列挿入
    Dim oCur As Object
    Dim oTxt As String
   
    '挿入文字列
        oTxt=chr(10) & date & "         編集 編集者名"
       
    'TextCursor
        oCur = ThisComponent.getText().createTextCursor
       
    ' 文末へ
        oCur.gotoEnd(false)
    '文字列挿入
        oCur.setString(oTxt)
       
End Sub

 

文頭なら oCur.gotoStartOfParagraph(false)


LibreOffice Writer Basic 表の挿入と文字列挿入 [LibreOffice Writer Basic]

LibreOffice Writer Basic 表の挿入と文字列挿入

参考サイト
ttp://openoffice3.web.fc2.com/OOoBasic_Writer_No2.html#OOoWT1b

OS LinuxMint18Cinnamon64bit
LibreOffice5.2

 LibreOffice Writer_tableTXT.png

 

Sub writer_table_test_1()
'表を作成して、表題を挿入する
Dim oText,oTable,oCurs

    oText = ThisComponent.getText()
   
    '表作成    .initialize(行数, 列数)
        oTable = ThisComponent.createInstance("com.sun.star.text.TextTable")
        oTable.initialize(3, 3)
        oCurs = ThisComponent.getCurrentController().getViewCursor()
       
    '表挿入
        oText.insertTextContent(oCurs, oTable, False)
       
    ' 文字入力    Array("","","")は行数分必要
          oTable.setDataArray(Array(Array("氏名","TEL","E-mail"),Array("","",""), Array("","","")))
End Sub

 


前の5件 | - LibreOffice Writer Basic ブログトップ


Linuxランキング