Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


13396 / 13644 ツリー ←次へ | 前へ→

【5555】データの型違いのとエラーになってしまう のらじ 03/5/20(火) 0:12 質問
【5557】Re:データの型違いのとエラーになってしまう りん 03/5/20(火) 6:26 回答
【5559】Re:データの型違いのとエラーになってしま... ポンタ 03/5/20(火) 8:30 回答
【5605】Re:データの型違いのエラーになってしまう のらじ 03/5/21(水) 22:18 お礼

【5555】データの型違いのとエラーになってしまう
質問  のらじ  - 03/5/20(火) 0:12 -

引用なし
パスワード
   こんばんわ、梅雨が近づいてきましたね。
出勤時のヘアスタイルを保つのに苦労する季節となりました。
あのベッカム様もエアチェンジをなさったとか。
アフリカン調で涼しげです。梅雨は関係ないでしょうが…

さて、表題につき困っております。どなたかお助け願います。m(_ _)m

VLOOPUP指定のセルがあり、
取得出来た場合には名称が入っており、
取得できなかった場合には#N/Aが表示されています。

そのセルを参照しているのですが、名称が入っている場合には大丈夫なのですが、
#N/Aの場合にはデータの型が違うとエラーになってしまいます。

仕方がないので、現在は#N/Aになってしまったセルは
Delキーで削除してから対応していますが、
件数が多い場合には手間がかかりますし、削除間違いも心配です。

どの様に対応したら良いのでしょうか?よろしくお願いします。m(_ _)m

【5557】Re:データの型違いのとエラーになってしま...
回答  りん E-MAIL  - 03/5/20(火) 6:26 -

引用なし
パスワード
   のらじ さん、おはようございます。

>こんばんわ、梅雨が近づいてきましたね。
>出勤時のヘアスタイルを保つのに苦労する季節となりました。
 くせ毛が年々ひどくなっていて、ストレートになるはずのムースで余計にはねたりするので、雨の時は結ぶしかありません(泣)。せっかく切ったのに。

 それはさておき。

>そのセルを参照しているのですが、名称が入っている場合には大丈夫なのですが、
>#N/Aの場合にはデータの型が違うとエラーになってしまいます。

エラートラップ用の分岐として、

 'セル値がエラーじゃなければ処理
  With Cells(1,1)
    If IsError(.Value) = False Then
      'ここで処理
    End If
  End With

または

'セル値が数値なら処理(計算のときとか)
  With Cells(1,1)
    If IsNumeric(.Value) = True Then
      'ここで処理
    End If
  End With

として、対象外の値を除くといいですよ。

ついでに、こっちも。

>仕方がないので、現在は#N/Aになってしまったセルは
>Delキーで削除してから対応していますが、
>件数が多い場合には手間がかかりますし、削除間違いも心配です。

 編集→ジャンプ→セル選択→●数式:エラー値だけにチェックをつける

これでシート上のエラーを返した数式の入っているセルが全部選択できるので、ここで消去(Delキー)すると、全部一度に消せます。

【5559】Re:データの型違いのとエラーになってしま...
回答  ポンタ  - 03/5/20(火) 8:30 -

引用なし
パスワード
   横から失礼します。

マクロではないのですが、VLOOKUPを設定するときに
以下のようにしてエラーかどうかの判定をさせる、という手もあります。

この例では、エラーの場合は""(空白)になるようにしてあります。

=IF(ISERROR(VLOOKUP(D1,$A1:$B1,2,FALSE)),"",VLOOKUP(D1,$A1:$B1,2,FALSE))

【5605】Re:データの型違いのエラーになってしまう
お礼  のらじ  - 03/5/21(水) 22:18 -

引用なし
パスワード
   リンさん、ポンタさん、助かりました。ありがとうございました。m(_ _)m

13396 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free