
エクセル関数で下記表の電話番号(A)と同じものを検索して住所(B)を導き出す際、電話番号(A)のセルに空白があるとうまく検索できません。
空白を無視するまたはセル内の文字列のみを対象にして検索できませんか。
シート1
A B C
03-3333-**** 東京都 犬
045-642-**** 神奈川県 ねこ
03-1111-**** 東京都 兎
シート2
A B
03-3333-**** VLOOKUP(A1.シート1A1:A3,2) =東京都
045-642-****□□ VLOOKUP(A2.シート1A1:A3,2) =エラー
←A2の欄にある資料から電話番語をコピーすると、番号の後に
空白スペースがコピーされてしまうためエラーが出てしまう。
※空白を無視して検索することはできませんか。
わかりにくい質問で申し訳ありません。
No.2ベストアンサー
- 回答日時:
尚、やむを得ない事情により、空白スペースを削除する訳には行かない場合において、もし、Sheet1のA列の方に入力されている電話番号には空白スペースが入っていないという事でしたら、次の様な方法もあります。
【空白スペースが電話番号の前か後ろのみに付いているだけで、電話番号の途中に空白スペースが挟まっている事は無い場合】
=VLOOKUP(TRIM($A1),Sheet1!$A:$A,2,FALSE)
【電話番号の途中に空白スペースが挟まっている事もある場合】
=VLOOKUP(SUBSTITUTE(SUBSTITUTE($A1," ",)," ",),Sheet1!$A:$A,2,FALSE)
尚、もしも、空白スペースが入っている理由が、単に「電話番号がセル内に表示される位置を左詰めや中央揃えにしたい」というだけの事である場合には、それはやむ得ない事情とは言えません。
その様な場合には、空白スペースを削除してしまった上で、セルの書式設定の配置を[左詰め]や[中央揃え]にするのが一般的なやり方です。
No.6
- 回答日時:
もし、空白スペースが電話番号の後ろにのみ付いていて、電話番号の途中に空白スペースが挟まっている事は無い場合には、次の様な方法もあります。
=VLOOKUP(TRIM($A1)&IF(COUNTIF(Sheet1!$A:$A,TRIM($A1)&" *")," *",IF(COUNTIF(Sheet1!$A:$A,TRIM($A1)&" *")," *","")),Sheet1!$A:$C,2,FALSE)
No.5
- 回答日時:
尚、Sheet1のA列に入力されている電話番号の中にも空白スペースが含まれているものがあり、尚且つ、処理が重くなる事は避けたい、という場合には、関数を使用して一旦、別の列に空白スペースを削除した電話番号を表示させておき、その新たに表示させた空白スペース抜きの電話番号を使用して、検索を行う様にします。
この様に、検索等の情報処理が行い易い様にするために使用する列の事を作業列と言います。
今仮に、Sheet3のA列を作業列として使用するものします。
まず、Sheet3のA1セルに次の様な関数を入力して下さい。
=SUBSTITUTE(SUBSTITUTE(INDEX(Sheet1!$A:$A,ROW())," ",)," ",)
次に、Sheet3のA1セルをコピーして、Sheet3のA2以下に(Sheet1において電話番号の表として使用されている最下段の行を上回るのに十分な行数となるまで)貼り付けて下さい。
その上で、Sheet2のB1セルには次の様な関数を入力して下さい。
=INDEX(Sheet1!$A:$C,MATCH(SUBSTITUTE(SUBSTITUTE($A1," ",)," ",),Sheet3!$A:$A,0),2)
No.4
- 回答日時:
配列数式は処理が重くなってしまうため、前に投稿した回答No.1や回答No.2では御勧めしなかったのですが、もし、配列数式の様な処理が重くなってしまう方法でも構わないという場合には、SUMPRODUCT関数を使用するという方法もあります。
(こちらは、配列数式ではなく通常の関数ですので、「Ctrl+Shift+Enter」は不要です)
【空白スペースが電話番号の前か後ろのみに付いているだけで、電話番号の途中に空白スペースが挟まっている事は無い場合】
=INDEX(Sheet1!$A:$C,SUMPRODUCT((TRIM(Sheet1!$A$1:$A$3)=TRIM($A1))*ROW(Sheet1!$A$1:$A$3)),2)
【電話番号の途中に空白スペースが挟まっている事もある場合】
=INDEX(Sheet1!$A:$C,SUMPRODUCT((SUBSTITUTE(SUBSTITUTE(Sheet1!$A$1:$A$3," ",)," ",)=SUBSTITUTE(SUBSTITUTE($A1," ",)," ",))*ROW(Sheet1!$A$1:$A$3)),2)
No.3
- 回答日時:
>A2の欄にある資料から電話番語をコピーすると、番号の後に空白スペースがコピーされてしまうためエラーが出てしまう。
>※空白を無視して検索することはできませんか。検索値の前後に空白(半角/全角)があるときはTRIM関数で両端の空白を除けば正常に検索できます。
=VLOOKUP(TRIM(A1),シート1!A$1:A$3,2) → 東京都
=VLOOKUP(TRIM(A2),シート1!A$1:A$3,2) → 神奈川県
範囲のキー列の文字列の右側に空白があるときはTRIM関数で処理しなくても無視されます。
左側に空白があるときはTRIM関数で処理する必要があります。
=VLOOKUP(TRIM(A1),TRIM(シート1!A$1:A$3),2) → 東京都
この時、TRIM関数の返り値は配列値を必要とするため、式を入力後Ctrl+Shift+Enterで確定します。
尚、シート名とセルの間に ! を忘れないようにしてください。
また、式を他のセルへコピーするときはセルのアドレスを絶対アドレスと相対アドレスを使い分けるようにしてください。
今回の例では範囲のA1:A3をA$1:A$3とすることで下へコピーしても範囲が固定されますので正確に処理されます。
No.1
- 回答日時:
空白スペースが入っている事が問題になっているのでしたら、A列に入力されている空白スペースを全て削除してしまえば良いと思います。
その際、一々、1セル毎に削除して行ったのでは手間が掛かり過ぎますので、次の様な操作を行う事で、A列に入力されている空白スペースを一括して削除されては如何でしょうか。
A列全体をまとめて範囲選択
↓
[Ctrl]キーを押しながら[H]キーを押す
↓
現れた「検索と置換」ダイアログボックスの[置換]タブをクリック
↓
「検索する文字列」欄に半角の空白スペースを1文字だけ入力
↓
「置換後の文字列」欄には(空白スペースも含めて)何も入力されていない状態にする
↓
「検索と置換」ダイアログボックスの[すべて置換]ボタンをクリック
↓
「検索する文字列」欄に全角の空白スペースを1文字だけ入力
↓
「置換後の文字列」欄には(空白スペースも含めて)何も入力されていない状態にする
↓
「検索と置換」ダイアログボックスの[すべて置換]ボタンをクリック
↓
「検索と置換」ダイアログボックスの[閉じる]ボタンをクリック
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
VLOOKUPのあいまい検索(スペース入り)
その他(パソコン・スマホ・電化製品)
-
EXCEL95 VLOOKUP関数で半角と全角
Excel(エクセル)
-
Excelでセル参照したとき、書式も一緒に持ってくるには?
Windows Vista・XP
-
-
4
複数の条件に合う行番号を取得するには
その他(Microsoft Office)
-
5
リストと一致する値のセルを塗りつぶしたい。
その他(Microsoft Office)
-
6
EXCELで2つの数値のうち大きい方を採択する数式
Excel(エクセル)
-
7
自分の部署・担当を言うとき、どういう言い方が正しいでしょうか?? 会社のときは、弊社といいますが、部
その他(ビジネス・キャリア)
-
8
Excel VBAで同じフォルダ内のファイルを開くには?
Excel(エクセル)
-
9
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
10
Excelで重複データの件数ではなく、何番目かを求める方法
Excel(エクセル)
-
11
エクセルで空白を無視して一番左にあるセルを参照したい
Excel(エクセル)
-
12
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
13
【Excel VBA】CSV取込時、数字の先頭の0を消えないようにするには?
Excel(エクセル)
-
14
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
15
EXCELで2列を参照し、重複するものを横に並べたい
Excel(エクセル)
-
16
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
17
リンク先のファイルを開かなくても、値が読み込めるようにできますか?(SUMIFSを使ってます)
Excel(エクセル)
-
18
有無、要否、賛否、是非、可否、当否…これらの言葉について
その他(教育・科学・学問)
-
19
A1セルに入力したら、入力時間をA2セルに自動挿入
Excel(エクセル)
-
20
フォルダは残してファイルだけ消したい
Windows Me・NT・2000
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WindowsXPを最近のパソコンに...
-
Windows 11 のウィンドゥのうっ...
-
絶対にいけるWindowsXPsp3の無...
-
WindowsXPのプロダクトキーを紛...
-
パソコンでCDを見たい、見る...
-
ドキュワークスの画像切り取り...
-
パソコンで文字入力時に@マーク...
-
Windows XP SP3のインストール...
-
アウトルックを「タスクバー」...
-
パソコンを買ってから何かやら...
-
Windows vistaのパスワードが分...
-
plcのラダー図が分からなくて困...
-
windowsのインストールにてISO...
-
windows 終了時にプログラムを...
-
何故かパソコンのアイコンが動...
-
フリープリントソフト「かんた...
-
Windows アカウント名 とは?
-
windowsXPでしか起動できないゲ...
-
エクセルのカメラ機能について...
-
印刷スープラがすぐに停止する
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WindowsXPを最近のパソコンに...
-
絶対にいけるWindowsXPsp3の無...
-
Windows 11 のウィンドゥのうっ...
-
パソコンを買ってから何かやら...
-
Windows XP SP3のインストール...
-
ドキュワークスの画像切り取り...
-
パソコンで文字入力時に@マーク...
-
アウトルックを「タスクバー」...
-
windowsXPでしか起動できないゲ...
-
XPがインストールできない
-
WindowsXPのプロダクトキーを紛...
-
パソコンでCDを見たい、見る...
-
エクセルのカメラ機能について...
-
windowsのインストールにてISO...
-
フリープリントソフト「かんた...
-
最近、パソコンを起動するとこ...
-
印刷スープラがすぐに停止する
-
やっぱり現代のPCにWindowsXPを...
-
アカウント名とユーザー名との...
-
パソコン起動時に謎のエラー画...
おすすめ情報