質問は2つの課題があります。
(1)前半
>単純に横方向にコピーすると、列番号は、変化しないのですね
そうです。変化させるにはCOLUMN()関数などを使います。
>横に長いデータを使用しているので
「データ」がVLOOKUPの第1引数(検索値)に関するのか、第2引数(検索範囲)に関するのかハッキリしません。
●このケースが良く判りません。
(例A)テーブルをE2:F6(例え)につくって
1 a
2 b
3 c
4 d
A1,B1、C1、D1・・・にデータを入れA2,B2、C2、D2・・
に式を入れるなら、
A2に=VLOOKUP(D1,$E$2:$F$6,2,FALSE)といれD2まで式を
複写すれば良い。
なにも疑問らしいことは起こらない。
(例B)E6:I9などに表を作って
1 a x v l
2 b y w m
3 c z s n
4 d u t o
A1に=VLOOKUP(B1,$E$6:$I$9,2,FALSE)
B2に=VLOOKUP(C1,$E$6:$I$9,3,FALSE)
C2に=VLOOKUP(D1,$E$6:$I$9,4,FALSE)
D2に=VLOOKUP(E1,$E$6:$I$9,5,FALSE)
・・・
のように式を変化させたいのでしょうか?
A2に
=VLOOKUP(A1,$E$6:$I$9,COLUMN(A1)+1,FALSE)
B2、C2・・に式を複写して、例えばC2には
=VLOOKUP(B1,$E$6:$I$9,COLUMN(B1)+1,FALSE)
にしたいのでしょうか?。
こんなケースってビジネスではあまり考えられませんが。
小生が誤解しているなら、例を上げて見てください。
(後半)
これも質問の意味がハッキリしない。具体例を上げるのが
一番良い。
コピーで式が変化するのは番地部分だけです。
それは(同一ブックの)別シート間でも(その制約は)始まっています。
Sheet2の(例えば)A1セルに=Sheet1!A1といれ、そのSheet2のA1をコピーして、同一ブックのSheet3の(例えば)A3に貼りつけると、=Sheet1!A3になります。
Sheet1の部分は変化しません。まして別ブックに持っていったりしても同じだし、(この例では指定してないが)ブック指定の部分も変化しません。
どのように変化させれば良いか、エクセルシステムにとって、表現し難いからです。質問者は自分の都合のよいあることを前提に考えているが、変化させたくないケースも多いので、変化させない記号なども導入しなければなりません。「表現が難しい」とは、シート名もSheet1、Sheet2は仮の名前で、東京シート、大阪シートと名古屋シートと名がついたら、どのように変化させる約束にするのでしょうか?表現できないでしょう。シートタブの左からの見える順番などその都度、如何様にも移動できますし。この様に難しい問題を抱えていますので、操作者の指定に任さざるを得ないのではないでしょうか。
(3)その他
第4引数を省略してますが、省略しない方が良いのでは。
あと2、3注意事項がありますが略。
お礼
ご回答 ありがとうございます。 とりあえず、仕事上の作業ではないんです・・