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

Q&A集[?]

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

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

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

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:3
昨日:2
総数:2028
現在:3


ダイアログ内の複数のテキストボックスの値の取得

ページOpenOffice.org FAQの登録ページ
投稿者Guard
分類
edit/refer
優先順位
edit/refer
状態
edit/refer
カテゴリー
edit/refer
投稿日2011-03-13 22:56:09 (日)
OSWindows7
依存するページ
バージョン
edit/refer

メッセージ

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

 教えて下さい。VBAで作成していた処理をOooで再作成しているのですが、ダイアログに複数のテキストボックスを配置して、その値を読み込む場合において、For 〜 Next 文を使用して読み込む事が出来ずに悩んでいます。TextField1〜TextField10 迄の10個の項目をkoumoku と言う配列に入れたいのですが、

for i = 1 to 10
 koumoku(i) = oMDialog.TextField + i.Text
next i

 文法としては間違っているのですが、こんな様な処理をしたいのですが・・・。 よろしくお願いします。


次のようにします

はにゃ? (2011-03-14 20:55:38 (月))

oMDialog 変数にダイアログモデルオブジェクトが保持されているなら次のようにできます。

for i = 1 to 10 
  koumoku(i) = oMDialog.getByName("TextField" & CStr(i)).Text
next i

エラーになります

Guard (2011-03-15 00:41:23 (火))

 迅速な回答ありがとうございます。早速やってみましたが、エラーになってしまいます。エラーは、

BASIC ランタイムエラー
例外が発生しました
Type: com.sun.star.container.NoSuchElementExceprion
Message:。

 と、なっています。oMDialogは、この命令の前に

oDialog = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
oMDialog = oDialog.getModel()

 としているのでモデルオブジェクトを保持していると思われるのですが、違うのでしょうか?
 VBAではそこそこの事ができたのですが、Oooでは手探り状態です。どうかよろしくお願いします。

 また、別件になってしまうかと思いますが、皆さんはどの様にしてOooを習得されたのですか?VBAは書籍等を購入して勉強したのですが、Oooは書店では見かけないのですが・・・。

Re: エラーになります

はにゃ? (2011-03-15 01:06:08 (火))

ダイアログに配置されているフィールド名を確認してみてください。手元ではTextField1-10を配置したダイアログで正しく動作します。該当するエラーは指定したコントロールがみつからないことを示しています。

filefaq6-178.odt

できました

Guard (2011-03-16 22:09:48 (水))

 できました。ありがとうございました。TextField10 を削除していたので、エラーとなっていました。
 やっと先に進めます。重ね重ねありがとうございました。

お名前:
題名:


添付ファイル: filefaq6-178.odt 1212件 [詳細]