- ベストアンサー
VBAユーザーフォーム作成のコンパイルエラーについて
- VBA初心者が本を見ながら作成したユーザーフォームでコンパイルエラーが発生しています。ボタンやスピン移動をクリックすると「コンパイルエラー SubまたはFunctionが定義されていません」と表示されます。
- コードを見直しましたが、どこが間違っているのかはよくわかりません。初心者のため説明不足もありますが、どうすればエラーを解消できるのか教えてください。
- また、コード内にはデータの書き込みや削除、表示などの処理があります。初心者でも理解しやすいように説明していただけると助かります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>ユーザーフォームの先頭に移動とはどうするのですか? コードウィンドウで上記プログラムの先頭と言う意味です。 --- Dim TBL(1 To 9) As Control 'ここに Private Sub Button更新_Click() ’以下略 Private Sub UserForm_Initialize() Dim TBL(1 To 9) As Control ’これを ’以下略
その他の回答 (2)
- o_chi_chi
- ベストアンサー率45% (131/287)
Dim TBL(1 To 9) As Control Dim データ範囲 As Range '↑これもここに移動したほうがよいと思います。 Private Sub Button更新_Click() ’以下略 ちなみに本の出版社のHPに改訂情報とか 乗ってないですか。
お礼
ありがとうございますm(__)m今日明日と仕事が休みですので月曜日に教えて頂いた通りしてみます!またわからなくなったら助けて下さいm(__)m本のHPとかに改定情報もあるんですね!一度見てみます。もう少し勉強したいと思います。
- o_chi_chi
- ベストアンサー率45% (131/287)
>Dim TBL(1 To 9) As Control この宣言が"UserForm_Initialize"内にあるので TBLが局所変数になってしまって "データ書き込み"からアクセスできないと思います。 "UserForm_Initialize"内のTBLの変数宣言を ユーザフォームの先頭に移動してください。
お礼
ありがとうございました
補足
ありがとうございますm(__)mただ、初心者すぎて簡単すぎる質問していいですか?m(__)m ユーザーフォームの先頭に移動とはどうするのですか? ほんとすみません(>_<)いきなり、ユーザーフォームをつくって欲しいと言われ本通りにしてみたのでまだちゃんと勉強できてなくて(-_-)
お礼
ありがとうございました