条件付きで表2の自動入力セルから表1のセルに値を入力します

条件付きで表2の自動入力セルから表1のセルに値を入力します

Excel 2010 では、TAB1 と TAB2 は同じワークシート内にあります。

TAB2 の列 C の値に基づいて、自動入力された TAB2 の列 E の TAB1 の列 D に値を入力したいと思っています。

TAB1は次のようになります:

COLUMN C   COLUMN D  COLUMN E
1            
2
3
4
5
6
7
8

TAB2はこんな感じ

COLUMN C   COLUMN E (AUTOFILLED FROM COLUMNS F & G)
1           1205 Grandview Ave
1           1207 Grandview Ave
1           1209 Grandview Ave 
1           1211 Grandview Ave   
2           1500 W 1st Ave
2           1502 W 1st Ave 
2           1504 W 1st Ave 
3           1240 Oakland Ave

TAB1 には 144 行または 288 行あり、TAB2 にはそれより少ない行数があります。

どうすればいいですか?

答え1

質問を正しく理解していれば、次のようなことをしようとしているのだと思います。

テーブル


Grandview Ave文字列全体ではなく、アドレスの同一部分 ( ではなく ) を取得したいのだと思います1205 Grandview Ave。サンプルのデータを考慮すると、セル値の最初のスペースの前のすべてを単純に切り取るだけでこれを行うことができます。スペースがない場合、セル値は切り取られません。

=IFERROR(RIGHT(G3, LEN(G3) - LEN(LEFT(G3, FIND(" ", G3, 1)))), G3)
  • FIND(" ", G3, 1)セル内の最初のスペースを検索しますG3
  • LEFT(G3, FIND())最初のスペースの左側にあるすべてのものを取得します。
  • LEN(LEFT())最初のスペースの前の文字数を取得します。
  • RIGHT(G3, LEN(G3) - LEN())最初のスペースの右側にあるすべてのものを取得します。
  • IFERROR(RIGHT(), G3)スペースが見つからない場合はセルの値を返します。

VLOOKUP表示したい文字列を取得したら、正しいインデックスを持つ値を見つけるためにを実行するだけです。一致するものが見つからなかった場合、セルは空になります。

=IFERROR(VLOOKUP(B3,F:J,5,FALSE),"")
  • VLOOKUP(B3,F:J,5,FALSE)範囲の5番目の列の最初の値を検索しますJ Fセルの値B3最初の列にあります。
  • IFERROR(VLOOKUP(),"")一致するものが見つからない場合は空の文字列を返します。

どちらの数式もコピー可能です。


ボーナスA最初の一致の数を表示する必要がない場合は、次のように単純に使用できます。

=IFERROR(VLOOKUP(B3,F,G,2,FALSE),"")

ボーナスBサポート列を作成したくない場合は、2つの数式を組み合わせて、G3最初の式をボーナス A の式と組み合わせると、次のような怪物のような結果になります。

=IFERROR(RIGHT(IFERROR(VLOOKUP(B3,F:G,2,FALSE),""), LEN(IFERROR(VLOOKUP(B3,F:G,2,FALSE),"")) - LEN(LEFT(IFERROR(VLOOKUP(B3,F:G,2,FALSE),""), FIND(" ", IFERROR(VLOOKUP(B3,F:G,2,FALSE),""), 1)))), IFERROR(VLOOKUP(B3,F:G,2,FALSE),""))

また、国によっては数式で;の代わりにを使用する場合もありますので注意してください。,

関連情報