- 締切済み
メッセージボックスを表示したいのですが
EXCEL2003でいろいろなリストなどを作っています。 普段使うのはパソコンに疎い年配の人たちなので、できるだけややこしい操作は必要の無いようにしていますが、エラーが発生するとパニックになってしまうようです。 特に多いのがVLOOKUP等で検索する文字列が無い場合に出る#N/Aなのですが、このエラーが発生した時にメッセージボックスを表示させ文字列を入力する前の状態にもどすイベントマクロを組みたいのですが、過去の質問等をいろいろ探してもなかなか見つけられません。 どなたかご教授をお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- neKo_deux
- ベストアンサー率44% (5541/12319)
> メッセージボックスを表示させ MessageBox "エラー" > 文字列を入力する前の状態にもどす ThisApplication.Undo Worksheet("シート名").Undo とか? 手元にExcelが無いので適当です。 -- > 過去の質問等をいろいろ探してもなかなか見つけられません。 普通はそんな事せずに、エラーになる値を入力させない入力制限の機能を使うとかで十分ですから…。
- imogasi
- ベストアンサー率27% (4737/17069)
>でいろいろなリストなどを作っています。 具体的なことを何も言ってなくて、何かわからない。 書かないほうが増し。 >いのがVLOOKUP等で検索する文字列が無い場合 関数の話だよね。VBAのWorksheetFunction.VlookUpのことではないよね。 関数なら、関数を入れるときに =IF(A1="","",IF(ISERROR(VLOOKUP(A1,$E$1:$F$3,2,FALSE)),"該当なし",VLOOKUP(A1,$E$1:$F$3,2,FALSE))) と場合を慮って手当てをすれば良い。 例データ 検索表 E列 F列 1 a 2 b 5 c ーーー A列に入力 A1 B1 4 該当なし 空白(未入力) 空白
補足
メッセージボックスを表示させ文字列を入力する前の状態にもどすイベントマクロを組みたいのですが、