- ベストアンサー
エクセルVBAの質問です
エクセルユーザーフォームをモードレスで起動した状態で、セルを手動で操作しユーザーフォームをクリックしたらマクロを実行する。 ということをしたいです。 順を追って書くと (1)ユーザーフォームを起動(モードレスで) (2)A1セルに文字を直接打ち込む(ユーザーフォームが選択されていない状態) (3)ユーザーフォームをクリック(ユーザーフォームを選択)したら指定したマクロを実行 この(3)のところができません。(というか考え方が分からず・・・) 分かりにくい質問で申し訳ございませんが、アドバイスの程よろしくお願いします。 (ちなみにエクセル2003を使用しています。)
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>NumLockがオン 今回のマクロが原因ではありません。 ご利用のパソコンの何かの問題です。 パソコン自体のご質問として別途ご相談を投稿し,解決してください。
その他の回答 (1)
- keithin
- ベストアンサー率66% (5278/7941)
回答No.1
標準モジュールに sub macro1() userform1.show vbmodeless appactivate application.name end sub で(1)と,(2)の準備まで出来ましたので,てきとーにセルに記入してください ユーザーフォームには private sub userform1_click() msgbox "hello" end sub で,(3)を実行します。 #念のため補足: なお,いわずもがなですが「セルに記入中」はどんなマクロも一切実行できません。 次のマクロを実行するには,セルに記入してEnterするなどで,セルへの入力を終了してからになります。
お礼
できました~!! とおもいきや、エクセル起動して一発目だとなぜかNumLockがオン(テンキー使用できず)となりますorz 一度エクセルを起動して上記マクロを実行後、改めてNumlockをオフにしユーザーフォームを起動してから行うとうまくいきますToT