• 締切済み

End Sub が必要です。

Excel97使用。 VBAの初心者の質問です。 ユーザーフォームの「OKButton」を押すと 「End Sub が必要です。」のエラーメッセージが・・・ End Subはあるのに Subを入れ子にしてるわけでもないのに 何でエラーになるんでしょうか? 記述は下記のとおりです。 ----- Private Sub OKButton_Click() '所有者欄の設定 Range("F5").Value = "〒" & 所有者〒Box & " " & 所有者住所Box Range("F11").Value = 所有者氏名Box Range("N11").Value = "電話" & 所有者電話Box '管理者欄の設定 Range("F17").Value = "〒" & 管理者〒Box & " " & 管理者住所Box Range("F22").Value = 管理者氏名Box Range("N22").Value = "電話" & 管理者電話Box End Sub ----- Private Sub キャンセルButton_Click() '個別台帳を閉じる Workbooks("個別台帳_" & 入力管理番号 & ".xls").Close False 'フォームを閉じる Unload 個別台帳編集Form End Sub ----- ちなみに下に記述された「キャンセルButton」を 押すと下記のエラーメッセージが出ます。 「End Sub、 End Function または End Property 以降には、コメントのみが記述できます。」 非常に困ってます。

みんなの回答

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.3

メニューのツールのマクロからVBE(VisualBasicEditor)を開きます。 VBEのメニューからデバッグのコンパイルを選びます。 エラーの箇所が反転もしくは赤色で表示されますのでそこを確認してください。 >「End Sub が必要です。」のエラーメッセージが・・・End Subはあるのに Private SubのEnd Subがどこか削除していましネストしている状態のようになっているとかEnd Subが少ない状態になっている。 >End Sub、 End Function または End Property 以降には、コメントのみが記述できます。 End Sub以降に何か記述が入っていないか確認してください。 その辺を確認してあれば'を先頭に入れるか余分な記述を削除するかでエラーは回避できると思います。

vide
質問者

お礼

皆さん回答ありがとうございました。 返信が遅れて申し訳ありませんでした。 結局、1段階前のバックアップに戻って 再度作り始めたら素直に進んだので 原因は不明なままですが、「非常に困っている」 状態からは脱出できました。 また同じトラブルが発生した際には 最優先でこのページを参考にしたいと 思います。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 ボタンをクリックする前に、モジュールの メニューのデバッグ(D) のVBAProject のコンパイルをクリックしてください。エラーになっている個所に飛びます。おそらく、最下行に単独の End Sub など、消し忘れが残っているはずです。 それから、コードは、リテラル値で入れずに、CONST などの定数を用いて、代入させたほうがよいです。

回答No.1

 ご提示のコードを実行してみましたが、おっしゃるようなエラーは表示されず、正常に実行されました。  原因は他の部分にあるのではないでしょうか。

関連するQ&A