SSブログ
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ランキング

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。