OOobbs3/86
質問
ダイアログを作成しています。 ダイアログにTextField1、OKボタンを置いて TextField1に数字を入力します。 OKボタンを押すとマクロを実行して その入力された値をシート1に貼り付けたいのですが、 入力された値を取得するマクロの記述が分かりません。 以下書いてはみたものの動かないマクロです。 Sub Year Dim oDialog3 As Object Dim oTextField As Object,oYear As Object DialogLibraries.LoadLibrary("Standard") oDialog3 = CreateUnoDialog(DialogLibraries.Standard.Dialog3) oTextField = oDialog3.GetControl("TextField1") oYear = oTextField.getText()'←ここで(オブジェクトの無用な使用)のエラーが出ます msgbox oYear.Value'まず取得した値を確認する End Sub 回答
Sub Year Dim oDialog3 As Object Dim oTextField As Object,oYear As Object DialogLibraries.LoadLibrary("Standard") oDialog3 = CreateUnoDialog(DialogLibraries.Standard.Dialog3) If oDialog3.execute() Then ' OK が押されたら oTextField = oDialog3.GetControl("TextField1") oYear = oTextField.getText()'←ここで(オブジェクトの無用な使用)のエラーが出ます msgbox oYear.Value'まず取得した値を確認する End If oDialog3.dispose() End Sub この場合、OK ボタンはボタンの種類で OK を割り当てておきます。 標準のボタンを押してもダイアログを閉じずにボタンを押したときのイベントで行う場合は以下のようなサブルーチンをボタンに割り当てます。 Sub OKButtonPushed(ev) oTextField = ev.Source.getControl("TextField1") msgbox oTextField.getText() End Sub
感想,コメント,メモ
|