解決 VBAからCALC 文字列の配置

マクロの作成、スクリプトの作成、APIの使い方

解決 VBAからCALC 文字列の配置

投稿記事by htmMaMs » 2月 8th, 2011, 7:57 am

VB(できればVBA)からCALCドキュメントを開き、セルの文字列の配置を縦書きに設定する方法を教えてください。
windowsXP、ACCESS2000のVBAで作業しています。
最後に編集したユーザー htmMaMs [ 2月 8th, 2011, 4:44 pm ], 累計 1 回
OpenOffice 3.2 on Windows XP
htmMaMs
 
記事: 9
登録日時: 12月 20th, 2010, 11:51 am

Re: VBAからCALC 文字列の配置

投稿記事by tani » 2月 8th, 2011, 2:00 pm

まずはOOo Basicでどう書くか調べると良いと思います。
(英語の情報しかないことが多いのでググる際には英単語のみを使うと良いと思います。)

で、OOo BasicではA1のセルを縦書きにするのに以下のように書くということが分かると、
コード: 全て選択   展開ビュー折りたたみビュー
Sub Main
  oDoc = ThisComponent
  oSheets = oDoc.getSheets()
  oSheet = oSheets.getByIndex(0)
  oRange = oSheet.getCellRangeByName("A1")
  oRange.setString("ああああ")
  oRange.Orientation = 3
  oRange.AsianVerticalMode = True
End Sub

これをVBAに書きなおせば良いということになります。こんな感じです。
コード: 全て選択   展開ビュー折りたたみビュー
Sub Main()
  ' oDoc = ThisComponent
  Set OOo = CreateObject("com.sun.star.ServiceManager")
  Set oDesktop = OOo.createInstance("com.sun.star.frame.Desktop")
  Dim dummy()
  Set oDoc = oDesktop.LoadComponentFromURL("private:factory/scalc", "_blank", 0, dummy)
  Set oSheets = oDoc.getSheets()
  Set oSheet = oSheets.getByIndex(0)
  Set oRange = oSheet.getCellRangeByName("A1")
  oRange.setString ("ああああ")
  oRange.Orientation = 3
  oRange.AsianVerticalMode = True
End Sub


※Access2003のVBAと、LibreOfficeで試しています。
tani
 
記事: 60
登録日時: 6月 13th, 2008, 10:12 am

Re: VBAからCALC 文字列の配置

投稿記事by htmMaMs » 2月 8th, 2011, 4:44 pm

tani様

早速、投稿していただきありがとうございます。
無事、縦書きにできました。
一応、ooo basicの方を調べるのですが、
なかなかうまくいきません :(
本当にありがとうございました。
OpenOffice 3.2 on Windows XP
htmMaMs
 
記事: 9
登録日時: 12月 20th, 2010, 11:51 am

Re: 解決 VBAからCALC 文字列の配置

投稿記事by tani » 2月 8th, 2011, 6:01 pm

APIの一次情報っぽいのは↓ですね。(ホントの一次情報はOOo本体のソースコードですが。。。)
http://api.openoffice.org/docs/common/r ... le-ix.html

例えば今回のセルのプロパティだと以下です。
http://api.openoffice.org/docs/common/r ... rientation

参考までに。
tani
 
記事: 60
登録日時: 6月 13th, 2008, 10:12 am

Re: 解決 VBAからCALC 文字列の配置

投稿記事by htmMaMs » 2月 9th, 2011, 6:04 am

tani様

ありがとうございます。
参考にさせていただきます :D
OpenOffice 3.2 on Windows XP
htmMaMs
 
記事: 9
登録日時: 12月 20th, 2010, 11:51 am


Return to マクロと UNO API

オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[1人]