
match関数で「#N/A」と表示される原因が分かりません。
例えば、セルB1に任意の文字列を書込み、セルC1に「=match(B1,A:A,0)」と書き込むと、「#N/A」と表示されます。
ところがA列を選択し、「検索と置換」を使ってB1セルの文字列を「検索する文字列」の欄にコピー/ペーストして検索すると同じ文字列を持つセルが検索できてしまいます。
何が原因でこの様な事が起こるのか教えて頂けないでしょうか。
また、match関数でのエラー回避の方法がありましたら、これも併せてお願いします。
A 回答 (7件)
- 最新から表示
- 回答順に表示
No.7
- 回答日時:
No.1です。
補足は読みました。文字列が原因かどうか確認するならB1に「=A5」のようにA列の値を表示させて
C1に正しい答えが表示されるか確認してください。
正しい答えが出る場合は、A列の文字列に問題があります。
見えない文字としてはスペースの他、外字、タブ、キャリッジリターン、ラインフィード等あります。
CLEAN関数を使って置換するか、手入力し直してください。
http://office.microsoft.com/ja-jp/excel-help/HP0 …
逆に「#N/A」が表示される場合は、シートまたはブックそのものが壊れてる可能性があります。
新しいブックを作成して、現在のシートの内容をコピーして同じ結果になるか確認してください。
No.6
- 回答日時:
>以上の処理を行っても問題が解決しないため、困っています。
確認ですが、「区切り位置」の操作は行ってみましたか?
それでもうまくいかないなら元データに何らかの表示されない文字コードが挿入されている可能性が考えられます(Webページをコピー貼り付けしたような場合)。
検索対象のA列のセルを参照する以下の数式を入力すると、どのような数字が返されるか調べてみてください。
=CODE(MID(A1,LEN(A1),1))
No.5
- 回答日時:
スキャナーなどのデータがA列で使われているのでしたらB1セルに次の式を入力して下方にオートフィルドラッグします。
=TRIM(SUBSTITUTE(A1,CHAR(9),))
CHAR(9)はタブマークなどがあるのを消すためです。
その後にB列を対象にMATCH関数を使います。C1に検索の文字があるとして
=IF(COUNTIF(B:B,C1),MATCH(C1,B:B,0),"")
No.4
- 回答日時:
「検索と置換」の操作では例えばB1セルに太陽と入力してあり、太陽を検索すればA列に太陽を含む文字があれば、例えば太陽光発電の文字についても検索されます。
太陽以外の文字があっても検索されるのです。太陽の文字の前後に空白などがある場合でも検索されます。しかしながらMACH関数の場合には太陽の文字の前や後ろに空白があれば見かけはB1セルの文字と同じになっていてもエラーの#N/Aが表示されます。太陽の文字の前後に空白や文字があってもエラー表示をさせないようにするためには次のような式を使用すればよいでしょう。
=MATCH("*"&B1&"*",A:A,0)
A列に太陽の文字がない場合でもエラー表示をしないようにするためには次のような式にします。
=IF(COUNTIF(A:A,"*"&B1&"*"),MATCH("*"&B1&"*",A:A,0),"")
もちろん太陽の文字の前後に空白や文字がある場合にはMATCH関数の対象外とするのでしたら、しかもエラー表示をさせないようにするのでしたら次のような式にします。
=IF(COUNTIF(A:A,B1),MATCH(B1,A:A,0),"")
No.3
- 回答日時:
すでに皆さんから回答があるように、#N/Aエラーの原因は検索文字とA列のデータが一致しない(同じ値でない)ためです。
また、、「検索と置換」を使ってB1セルの文字列を「検索する文字列」の欄にコピー/ペーストして検索すると、きちんとヒットするのは、検索する値が「文字列数値」の場合、または検索の「オプション」で「完全に一致するセルを検索する」にチェックを入れていないから発生します(部分検索で他の文字が含まれていてもヒットする)。
解決法は、文字列数字の場合は、A列を選択して「データ」「区切り位置」で「完了」します。
スペースが入っている場合は、A列を選択して、検索の「オプション」で「完全に一致するセルを検索する」にチェックを入れて、検索する文字列にスペースを入力し、置換後の文字列には何も入力せず「すべて置換」します。
この回答への補足
説明不足の点がありました。申し訳ありません。補足させて頂きます。
まずスペースの件ですが、A列およびB1セルにおいて、全角と半角スペースを一括変換で削除する処理をしてみました。
また、文字の全角/半角で問題になっている可能性も考えて、asc関数で、A列およびB1セルを半角文字にもしています。
検索の部分検索/完全一致は切り替えても違いはありませんでした。
以上の処理を行っても問題が解決しないため、困っています。
他に考えられる原因がありましたら、お願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
INDEX、MATCH関数の#N/Aエラー表示を空欄に
Excel(エクセル)
-
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
Excelでセル参照したとき、書式も一緒に持ってくるには?
Windows Vista・XP
-
-
4
エクセルで、重複データを除外して小さい値順に並べ替える関数
Excel(エクセル)
-
5
Excel MATCH関数で検索範囲内に同じ値の検索値が複数ある場合
Access(アクセス)
-
6
Excelで重複データの件数ではなく、何番目かを求める方法
Excel(エクセル)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
条件付き書式のコピーについて(参照先も自動で変更したい)
Excel(エクセル)
-
9
エクセルでアルファベットか数値の判定をしたいのですが
Excel(エクセル)
-
10
エクセル2016でfilter関数がないので、、抜き出す関数をおしえてください。
Excel(エクセル)
-
11
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
12
Excelの条件付き書式設定の太い罫線
Excel(エクセル)
-
13
有無、要否、賛否、是非、可否、当否…これらの言葉について
その他(教育・科学・学問)
-
14
エクセルの散布図のX軸に文字を表示したいのですが、どうしたらよいのでしょうか?
Excel(エクセル)
-
15
エクセルのMATCH関数について
Excel(エクセル)
-
16
VLOOKUP関数を使用時、検索する値は昇順に並べ替える必要がありますか。
Access(アクセス)
-
17
ヘッダー
Excel(エクセル)
-
18
エクセルで連続データから、数個飛ばしのデータを抜き取る方法
Excel(エクセル)
-
19
E列のセルに数値が入れば(空白でなければ)B列の同じ行のセルに色がつく
その他(Microsoft Office)
-
20
複数の文字列のいずれかが含まれていたらTRUEを返す関数について
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのセルの中の,よりも前...
-
エクセルで文字の入力がセルの...
-
多数の計算セルに一括で同一の...
-
Excelで、半角スペースをTABに...
-
小数点を消す方法
-
Excelからテキストへのコ...
-
Excelの空文字セルの削除方法を...
-
excelで可視セルのみ置換
-
エクセルで「4」「9」抜けの...
-
エクセルでセル内の一部分だけ...
-
置換機能を使わずに先頭に「'」...
-
一括でダブルクリックした状態...
-
Excelのアポストロフィーの削除
-
エクセル 範囲 にある「0」を一...
-
VBAでの日付の置換方法を教えて...
-
Excelで特定の文字の前だけに空...
-
EXCELエクセル長文の置き換え
-
Excelのシートにある1行...
-
企業名簿で(株)や(有)を無視し...
-
【エクセル】ピボットテーブル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで文字の入力がセルの...
-
多数の計算セルに一括で同一の...
-
Excelで、半角スペースをTABに...
-
Excelからテキストへのコ...
-
excelで可視セルのみ置換
-
Excelの空文字セルの削除方法を...
-
Excelのシートにある1行...
-
エクセルで「4」「9」抜けの...
-
一括でダブルクリックした状態...
-
【エクセル】ピボットテーブル...
-
置換機能を使わずに先頭に「'」...
-
Excelの入力済みセルに一括で、...
-
小数点を消す方法
-
エクセルでセル内の一部を一括...
-
Excelのアポストロフィーの削除
-
エクセルのセルの中の,よりも前...
-
エクセルでセル内の一部分だけ...
-
企業名簿で(株)や(有)を無視し...
-
Excelで特定の文字の前だけに空...
-
別シートのリストから置換する方法
おすすめ情報