こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルVBAの質問です。

エクセルVBAの質問です。

セルに特定の値が入力された場合にエラーとし、「再試行」を選択するとセルが修正出来る状態にしたいのですが、下記のコードだと実行時エラーが発生してしまいます。

if cells(10,10).value > 1 then
if msgbox("err", vbCritical + vbRetryCancel,"") = vbRetry then
Cells(10,10).Select
Cells(10,10).Active ⇒ エラー箇所
else
Cells(10,10).ClearContents
Endif
Endif

実行時エラー '438'
オブジェクトは、このプロパティまたはメソッドをサポートしてません。

いろいろネットを検索してみましたが、よくわかりませんでした・・・。
VBAは初心者です。

かなり困ってます。
どなたか助言をお願い致します。

投稿日時 - 2010-06-13 02:29:34

QNo.5964637

すぐに回答ほしいです

質問者が選んだベストアンサー

>Cells(10,10).Select
>Cells(10,10).Active 

"Active"と言うのは無しですね。(記述ミス)
本来は、"Activate"とします。

で、select も activate も同じ意味ですから、2行書く必要はありません。
”Cells(10,10).Active”を削除で解決だと思います。

投稿日時 - 2010-06-13 03:06:40

お礼

ありがとうございます、解決しました。
完全に記述ミスです・・・。
お騒がせしました。

投稿日時 - 2010-06-13 10:57:23

このQ&Aは役に立ちましたか?

6人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

値の条件が単純なら VBA でコードを書かずに入力規則でよくないですか?

投稿日時 - 2010-06-13 09:12:57

お礼

ありがとうございます。
セルに複数の条件を追加していく予定でしたので。
コードは単純化してます。
一晩寝て見直してみると解決しました。

投稿日時 - 2010-06-13 10:59:47

あなたにオススメの質問