「Web出版サイト」ベータ公開

Q&A集[?]

当サイトでのご質問の受付は終了しました

すべてのコンテンツを読み込み専用としたため、回答欄からも投稿できません

Apache OpenOffice/LibreOfficeのご質問はそれぞれのフォーラムへご投稿ください

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:1
昨日:0
総数:2011
現在:4


テキストボックスへの文字列のコピー

ページOpenOffice.org FAQの登録ページ
投稿者かず
分類
edit/refer
優先順位
edit/refer
状態
edit/refer
カテゴリー
edit/refer
投稿日2009-09-25 13:11:12 (金)
OSWindows XP
依存するページ
バージョン
edit/refer

メッセージ

回答ページでは行末に「~」を付加する必要はありません

excelマクロにて作成した下記のプログラムがcalcでは エラーとなります。

Option VBASupport 1
Sub ボタン2_Click()

  ActiveSheet.DrawingObjects("テキスト 1").Select
  Selection.Characters.Text = "テキスト 1"
    
End Sub

シート上に作成した、コマンドボタンを押すと、事前に用意した"テキスト 1" というテキストボックスに"テキスト 1"と表示させるマクロです。

calcではどのように記述するのでしょうか、よろしくお願いします。


無題

tani (2009-09-25 15:42:23 (金))

Option VBASupport 1では動作しないコードのようですね。
素直にOOoの標準的なAPIで書き直すしかなさそうです。

 oSheet = ThisComponent.getSheets().getByIndex(0)
 oTextBox = oSheet.getDrawPage().getForms().getByIndex(0).getByname("テキスト 1")
 oTextBox.setString("テキスト 1")


こんな感じでしょうか。

excelのラベルオブジェクトではどうなりますか?

かず (2009-09-28 13:39:26 (月))

excelの「テキストボックス」オブジェクトではうまくいきましたが、
excelの「ラベル」オブジェクトの場合はどう記述するのでしょうか?

oSheet = ThisComponent.getSheets().getByIndex(0)
oTextBox = oSheet.getDrawPage().getForms().getByIndex(0).getByname("label1")
oTextBox.setString("テキスト 1")

ちなみに上記コーディングでは、2行目はとおりましたが、3行目(値をセットする)でエラーとなりました。

Calcのラベルフィールド

M.Kamataki (2009-09-28 16:26:53 (月))

ダイアログのラベルフィールド情報ばかりで、何気にフォームのラベルフィールドの情報は少なかったのでした。以下でどうでしょうか。

Sub SetLabelField
oForm = ThisComponent.getDrawPages().getByIndex(0).getForms().getByName( "Standard" )
'フォーム名が「Standard」の場合
oLabel = oForm.getByName( "label1" ) 
oLabel.Label = "テキスト 1"
End Sub

参考:
2.シート上に作成したボタンとラベルに文字を記入するBasicコード
http://ooosupport.good-day.net/ja/documents/faq/basic

よくよく見直すと

M.Kamataki (2009-09-28 16:36:41 (月))

結局は、

oTextBox.setString("テキスト 1")


oTextBox.Label("テキスト 1")

と直しても動作しました。一応、oTextBoxをoLabelに置換するとわかりやすいかと思いますが。

無題

かず (2009-09-28 16:38:53 (月))

うまくいきました
貴重な情報 皆様ありがとうございました。

オリジナルの情報

M.Kamataki (2009-09-28 16:46:59 (月))

フォーム上のラベルフィールドのコードの情報ははにゃ?さんのものでした。

参考:
CALCのコントロールをBasicマクロで扱う方法は?
http://oooug.jp/cgi-bin/bbs/users/1054980773.html

お名前:
題名: