入力規則設定時、実行時エラー1004が出てしまう
入力規則の設定が正常にできない場合があります。
インターネットで調べると、入力規則の削除(Delete) や ワークシートの保護解除(Unprotect)の記載を
すぐに見つける事が出来ますが、それでも対処できない場合があります。
———————————-
実行時エラー1004「アプリケーション定義またはオブジェクト定義のエラーです。」
———————————-
入力規則設定時、実行時エラー1004が発生する原因
オートシェイプなどを選択するなどして、ワークシート上にフォーカスがない場合、
実行時エラー1004が発生します。
'■入力規則設定時、実行時エラー1004「アプリケーション定義またはオブジェクト定義のエラーです。」が発生するコード
Public Sub sample()
'■ワークシートの保護解除
ActiveSheet.Unprotect
'■オートシェイプを選択する
ActiveSheet.Shapes("正方形/長方形 1").Select
'■入力規則のDeleteや シートのUnprotectをしてもエラーが発生する
With Range("A1").Validation
.Delete
.Add Type:=xlValidateList, Formula1:="1,2,3,4,5"
End With
'実行時エラー1004「アプリケーション定義またはオブジェクト定義のエラーです。」
End Sub
入力規則の設定時、実行時エラー1004の対処方法
セルをSelectやActivateでワークシートにフォーカスを与えましょう。
Public Sub sample()
'■ワークシートの保護解除
ActiveSheet.Unprotect
'■オートシェイプを選択する
ActiveSheet.Shapes("正方形/長方形 1").Select
'■ワークシートにフォーカスを与える(入力規則設定時のエラー回避)
Range("A1").Select
'■実行時エラーが発生しない
With Range("A1").Validation
.Delete
.Add Type:=xlValidateList, Formula1:="1,2,3,4,5"
End With
End Sub
注意点
- 特にありません。



コメント