Excel VBA質問箱 IV

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

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


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

【16326】ファンクションの呼び出し かんたろう 04/7/25(日) 14:42 質問[未読]
【16330】Re:ファンクションの呼び出し IROC 04/7/25(日) 15:27 回答[未読]
【16333】Re:ファンクションの呼び出し かんたろう 04/7/25(日) 15:54 回答[未読]
【16334】Re:ファンクションの呼び出し IROC 04/7/25(日) 15:57 回答[未読]
【16337】Re:ファンクションの呼び出し かんたろう 04/7/25(日) 16:20 回答[未読]
【16338】Re:ファンクションの呼び出し [名前なし] 04/7/25(日) 16:55 回答[未読]
【16345】Re:ファンクションの呼び出し かんたろう 04/7/25(日) 20:02 お礼[未読]

【16326】ファンクションの呼び出し
質問  かんたろう  - 04/7/25(日) 14:42 -

引用なし
パスワード
   下記のようにCells(1,1)に入力したシート名のシートが存在したら
showメソッドによりHelloと表示されるようにしてみました。
しかし、プロシージャ内のshow()のところで構文エラーがでます。
どこがいけないのでしょうか?ご指摘お願いいたします。


Sub creat_insert()
  Worksheets("便利マクロ").Activate
  Cells(1, 1).Activate
  
  Dim wr As Worksheet
  Dim flag As Boolean
    
  For Each wr In Worksheets
    If Cells(1, 1) = wr.Name Then
      show()
      flag = True
    Else
      flag = False
    End If
  Next
  
  MsgBox "そのようなシートはありません"
      
End Sub


Function show()
   MsgBox "Hello"
End Function

【16330】Re:ファンクションの呼び出し
回答  IROC  - 04/7/25(日) 15:27 -

引用なし
パスワード
   不具合の原因かどうか確認していませんが、
もともと showメソッドは存在していますので、
プロシージャ名を変更しては如何でしょうか?

【16333】Re:ファンクションの呼び出し
回答  かんたろう  - 04/7/25(日) 15:54 -

引用なし
パスワード
   ご返答ありがとうございます。
メッソド名は show() から aaa()に変えてみましたが結果は同じで
構文エラーとなります。

【16334】Re:ファンクションの呼び出し
回答  IROC  - 04/7/25(日) 15:57 -

引用なし
パスワード
   Function を sub しては如何でしょうか?

【16337】Re:ファンクションの呼び出し
回答  かんたろう  - 04/7/25(日) 16:20 -

引用なし
パスワード
   ▼IROC さん:
>Function を sub しては如何でしょうか?


Sub aaa()
   MsgBox "Hello"
End Sub
と書き換えて
aaa()で呼び出すということでしょうか?
上記のようにしましたところまだ構文エラーが出ました

【16338】Re:ファンクションの呼び出し
回答  [名前なし]  - 04/7/25(日) 16:55 -

引用なし
パスワード
   以下のように変えればよろしいかと。
showプロシージャは名前を変更したほうがいいでしょう。
戻り値が無いなら、FunctionではなくSubのほうがよいでしょう。

>Sub creat_insert()
>  Worksheets("便利マクロ").Activate
>  Cells(1, 1).Activate
>  
>  Dim wr As Worksheet
>  Dim flag As Boolean
>    
>  For Each wr In Worksheets
>    If Cells(1, 1) = wr.Name Then
      Call show
>      flag = True
      Exit For
>    Else
>      flag = False
>    End If
>  Next

  If flag Then Exit Sub

>  
>  MsgBox "そのようなシートはありません"
>      
>End Sub
>
>
>Function show()
>   MsgBox "Hello"
>End Function

【16345】Re:ファンクションの呼び出し
お礼  かんたろう  - 04/7/25(日) 20:02 -

引用なし
パスワード
   ▼[名前なし] さん:
>以下のように変えればよろしいかと。
>showプロシージャは名前を変更したほうがいいでしょう。
>戻り値が無いなら、FunctionではなくSubのほうがよいでしょう。
ご指摘の方法で対応し無事できました
お答えくださった皆様方ありがとうございました。

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