VB(できればVBA)からCALCドキュメントを開き、セルの文字列の配置を縦書きに設定する方法を教えてください。
windowsXP、ACCESS2000のVBAで作業しています。
			
			
													解決 VBAからCALC 文字列の配置
解決 VBAからCALC 文字列の配置
					最後に編集したユーザー htmMaMs [ 2月 8, 2011, 4:44 pm ], 累計 1 回
									
			
						
							OpenOffice 3.2 on Windows XP
			
						Re: VBAからCALC 文字列の配置
まずはOOo Basicでどう書くか調べると良いと思います。
(英語の情報しかないことが多いのでググる際には英単語のみを使うと良いと思います。)
で、OOo BasicではA1のセルを縦書きにするのに以下のように書くということが分かると、
これをVBAに書きなおせば良いということになります。こんな感じです。
※Access2003のVBAと、LibreOfficeで試しています。
			
			
									
						
										
						(英語の情報しかないことが多いのでググる際には英単語のみを使うと良いと思います。)
で、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
コード: 全て選択
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
Re: VBAからCALC 文字列の配置
tani様
早速、投稿していただきありがとうございます。
無事、縦書きにできました。
一応、ooo basicの方を調べるのですが、
なかなかうまくいきません
本当にありがとうございました。
			
			
									
						
							早速、投稿していただきありがとうございます。
無事、縦書きにできました。
一応、ooo basicの方を調べるのですが、
なかなかうまくいきません

本当にありがとうございました。
OpenOffice 3.2 on Windows XP
			
						Re: 解決 VBAからCALC 文字列の配置
APIの一次情報っぽいのは↓ですね。(ホントの一次情報はOOo本体のソースコードですが。。。)
http://api.openoffice.org/docs/common/r ... le-ix.html
例えば今回のセルのプロパティだと以下です。
http://api.openoffice.org/docs/common/r ... rientation
参考までに。
			
			
									
						
										
						http://api.openoffice.org/docs/common/r ... le-ix.html
例えば今回のセルのプロパティだと以下です。
http://api.openoffice.org/docs/common/r ... rientation
参考までに。
