Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11416 / 13644 ツリー ←次へ | 前へ→

【16204】フォーム上に付いているボタンを押した場合の処理 くどう 04/7/20(火) 19:00 質問[未読]
【16205】Re:フォーム上に付いているボタンを押した... ichinose 04/7/20(火) 19:15 回答[未読]
【16206】Re:フォーム上に付いているボタンを押した... くどう 04/7/20(火) 21:07 お礼[未読]

【16204】フォーム上に付いているボタンを押した場...
質問  くどう  - 04/7/20(火) 19:00 -

引用なし
パスワード
   フォーム上に付いているボタンを押した場合のイベントプロシージャーからの
呼び出し関数data_str_CHK(Txt_tmp) をSheet1コードに記述したのですが、
SUBまたはFunctionが定義されていません。と出ます。
なにか共通設定があるのでしょうか?
お詳しい方ご教授願います。


Private Sub SyuSei_Button_Click()
  Dim Txt_tmp As String
  Txt_tmp = Syusei_Bi_input_TXT.Text
  If data_str_CHK(Txt_tmp) = "StrOK" Then
    MsgYesNo = MsgBox(" チェック完了です。", vbOKOnly)
  Else
    MsgYesNo = MsgBox("その入力は不正です。", vbOKOnly)
  End If
End Sub

【16205】Re:フォーム上に付いているボタンを押し...
回答  ichinose  - 04/7/20(火) 19:15 -

引用なし
パスワード
   ▼くどう さん:
こんばんは。

>フォーム上に付いているボタンを押した場合のイベントプロシージャーからの
>呼び出し関数data_str_CHK(Txt_tmp) をSheet1コードに記述したのですが、
>SUBまたはFunctionが定義されていません。と出ます。
>なにか共通設定があるのでしょうか?
>お詳しい方ご教授願います。
Sheet1のモジュールに記述したのなら、
data_str_CHKは、Sheet1に作成した独自メソッドということになりますから、
既成メソッドを記述するのと同じように呼び出して下さい。


>
>
>Private Sub SyuSei_Button_Click()
>  Dim Txt_tmp As String
>  Txt_tmp = Syusei_Bi_input_TXT.Text
  If worksheets("sheet1").data_str_CHK(Txt_tmp) = "StrOK" Then
' 一例ですが、
>    MsgYesNo = MsgBox(" チェック完了です。", vbOKOnly)
>  Else
>    MsgYesNo = MsgBox("その入力は不正です。", vbOKOnly)
>  End If
>End Sub

但し、
この「data_str_CHK」は、Private宣言では駄目ですよ!!
Sheet1のモジュールで
'================================
Function data_str_CHK(aaa)
  data_str_CHK = "aaa"
End Function
こんな感じに(これは、おそらくは余計なお世話でしょうが・・)!!

確認してみて下さい。

【16206】Re:フォーム上に付いているボタンを押し...
お礼  くどう  - 04/7/20(火) 21:07 -

引用なし
パスワード
   有難うございました。助かりました!!

▼ichinose さん:
>▼くどう さん:
>こんばんは。
>
>>フォーム上に付いているボタンを押した場合のイベントプロシージャーからの
>>呼び出し関数data_str_CHK(Txt_tmp) をSheet1コードに記述したのですが、
>>SUBまたはFunctionが定義されていません。と出ます。
>>なにか共通設定があるのでしょうか?
>>お詳しい方ご教授願います。
>Sheet1のモジュールに記述したのなら、
>data_str_CHKは、Sheet1に作成した独自メソッドということになりますから、
>既成メソッドを記述するのと同じように呼び出して下さい。
>
>
>>
>>
>>Private Sub SyuSei_Button_Click()
>>  Dim Txt_tmp As String
>>  Txt_tmp = Syusei_Bi_input_TXT.Text
>   If worksheets("sheet1").data_str_CHK(Txt_tmp) = "StrOK" Then
>' 一例ですが、
>>    MsgYesNo = MsgBox(" チェック完了です。", vbOKOnly)
>>  Else
>>    MsgYesNo = MsgBox("その入力は不正です。", vbOKOnly)
>>  End If
>>End Sub
>
>但し、
>この「data_str_CHK」は、Private宣言では駄目ですよ!!
>Sheet1のモジュールで
>'================================
>Function data_str_CHK(aaa)
>  data_str_CHK = "aaa"
>End Function
>こんな感じに(これは、おそらくは余計なお世話でしょうが・・)!!
>
>確認してみて下さい。

11416 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free