- 締切済み
Excel VBAの罫線描画マクロをOpenOfficeCulcで実行。罫線が描画されない。
Excel VBAで作成したマクロをOpenOffice.orgのCulcに単純移行して 実行してみたのですが、コードは実行されるのに罫線が描画されない 現象が発生しています。 罫線描画はCulcとExcelで互換が遅れている部分だと聞いていますが、 Culc独自のマクロで作成するしか回避方法はないのでしょうか? マクロは下記のような構成になっています。 REM ***** BASIC ***** Option VBASupport 1 Sub draw_line() With Worksheets("drawline") .Range("B2:E8").Borders(xlEdgeLeft).LineStyle = xlContinuous .Range("B2:E8").Borders(xlEdgeTop).LineStyle = xlContinuous .Range("B2:E8").Borders(xlEdgeBottom).LineStyle = xlContinuous .Range("B2:E8").Borders(xlEdgeRight).LineStyle = xlContinuous .Range("B2:E8").Borders(xlInsideVertical).LineStyle = xlContinuous .Range("B2:E8").Borders(xlInsideHorizontal).LineStyle = xlContinuous End With End Sub
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- new-OKWave
- ベストアンサー率68% (60/87)
VBAをそのまま使うのはいくらなんでも無理があると思います。 しかし、OpenOffice.orgは関連サイトが充実しているので、ググれば直ぐに回答にたどり着けます。 マクロ関係ですと「はにゃさん」のサイトが非常に充実しています。(日本1と思います) URL : http://hermione.s41.xrea.com/pukiwiki/index.php?FrontPage 今回の回答も「はひゃさん」のサイトにサンプルがありました。 また、下記の様なサイトもありますので参考までに記しておきます。 URL : http://openoffice3.web.fc2.com/ 【コード】 Sub Main dim oRange as Object oRange = ThisComponent.getSheets().getByIndex(0).getCellRangeByName("B2:E8") aTableBorder = CreateUnoStruct("com.sun.star.table.TableBorder") aLine = CreateUnoStruct("com.sun.star.table.BorderLine") 'ラインの内容 aLine.OuterLineWidth = 1 aLine.InnerLineWidth = 0 aLine.LineDistance = 0 aLine.Color = RGB(0,0,0) '表用罫線外枠のライン指定 aTableBorder.TopLine = aLine aTableBorder.BottomLine = aLine aTableBorder.LeftLine = aLine aTableBorder.RightLine = aLine '表用罫線外枠のライン表示のオン aTableBorder.IsTopLineValid = True aTableBorder.IsBottomLineValid = True aTableBorder.IsLeftLineValid = True aTableBorder.IsRightLineValid = True '表用罫線内側のライン指定 aTableBorder.HorizontalLine = aLine aTableBorder.VerticalLine = aLine '表用罫線内側のライン表示のオン aTableBorder.IsHorizontalLineValid = true aTableBorder.IsVerticalLineValid = true '範囲に表用罫線設定反映 oRange.TableBorder = aTableBorder End Sub 頑張ってOOoを使いこなして下しさい。
お礼
> VBAをそのまま使うのはいくらなんでも無理があると思います。 やはりそうですか。 OOoのBasicは未知の世界で躊躇していたんですが、 やらざるを得ない状況ですね。腹をくくりました! 貴重なご意見と情報をいただきありがとうございます。