VLOOKUPの参照先が変わってしまうトラブルを解決したいです。

このQ&Aのポイント
  • エクセルのVLOOKUPについての質問です。エクセルで、VLOOK関数を使用して(IF関数と一緒に使用しています)、A2の欄に、A1を参照してA1から値を引っ張ってくる形となっています。そのIF+VLOOKの関数は、うまく作動しているのですが、たとえばこのA1を切り取り、べつのシートに貼り付けすると、A2は、その貼り付けた先を参照しようとします。(IF+VLOOKの関数自体、勝手に変化して、参照先が変わっています)私はA1の値を切り取ってどこに貼り付けようと、仮にどこからA1に値を貼り付けようと、常にA1の値を参照させたいのです。どのようにしたら上手くいくでしょうか?
  • ExcelのVLOOKUP関数を使用して、A2のセルにA1を参照して値を取得する方法について質問があります。しかし、A1の値を別のシートに貼り付けると、A2の参照先も自動的に変更されてしまいます。私は常にA1の値を参照させたいのですが、どのようにすれば良いでしょうか?
  • VLOOKUPの参照先が変わってしまう問題について質問です。ExcelでVLOOK関数とIF関数を使用し、A2セルにA1の値を参照して値を取得しています。しかし、A1の値を切り取って別のシートに貼り付けると、A2の参照先も変わってしまいます。常にA1の値を参照させるためにはどうすればいいでしょうか?
回答を見る
  • ベストアンサー

VLOOKUPの参照先が変わってしまうトラブルを解決したいです。

VLOOKUPの参照先が変わってしまうトラブルを解決したいです。 エクセルのVLOOKUPについての質問です。 エクセルで、VLOOK関数を使用して(IF関数と一緒に使用しています)、 A2の欄に、A1を参照してA1から値を引っ張ってくる形となっています。 そのIF+VLOOKの関数は、うまく作動しているのですが、たとえばこのA1を切り取り、べつのシートに貼り付けすると、A2は、その貼り付けた先を参照しようとします。(IF+VLOOKの関数自体、勝手に変化して、参照先が変わっています) 私はA1の値を切り取ってどこに貼り付けようと、仮にどこからA1に値を貼り付けようと、常にA1の値を参照させたいのです。 どのようにしたら上手くいくでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.4

そういう時はOFFSET を使うのがいいでしょう。 たとえば、A2からA1を参照する場合、「A1」と書くのではなく、「OFFSET(A2,0,-1)」とします。 これは「A2の同じ行(0)、一つ左(-1)のセル」という意味になり、 こうすれば、A1を切り取って移動してもこの式は変わりません。 なお、回答1/回答2の「絶対参照にする」方法では、今回の質問者さんの問題は解決しないですね。 A2がA1を参照しているときに、A2をB2にコピーしたら、 相対参照(A1)の時は、B2はB1を参照しますが、 絶対参照($A$1)の時は、B2もA1を参照したままにななる、というものです。 ですが、相対参照(A1)/絶対参照($A$1)どちらの場合でも、 例えば、A1を切り取ってA3に貼り付けたりすると、参照先は A3や$A$3 に変わってしまいます。

ami0607
質問者

お礼

ありがとうございます。 こんな関数があるとは知りませんでした。 やってみると、上手く行きました!ありがとうございます!

その他の回答 (3)

  • ann_dv
  • ベストアンサー率43% (528/1223)
回答No.3

切り取り→貼りつけの操作ではどうしてもそうなってしまうので、コピー→貼りつけを実施後コピー元を削除すれば一応ご希望通りの結果にはなると思います。

  • nine999
  • ベストアンサー率44% (512/1140)
回答No.2

セルの参照を固定するには絶対指定を使います。 例:VLOOKUP(A1,B1..C5,1) → VLOOKUP($A$1,$B$1..$C$5,1) このように$を使うと、コピーをしても参照先は固定されたままです。 しかし、別のシートとなると参照先はコピー先のシートになってしまいますので、シート名を指定します。 例:VLOOKUP($A$1,$B$1..$C$5,1) → VLOOKUP(シート1!$A$1,$B$1..$C$5,1) 別シートの別のセルにコピーする場合であれば、セルごとコピーするのではなく、数式バーの中の数式を選択してコピーすれば、数式をそのままコピーすることが出来ます。

ami0607
質問者

補足

回答をありがとうございます。 ただ、絶対参照にしても、やはり変わらず、貼り付け先を参照するようです。

  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.1

A1を$A$1にしてみるとか。

関連するQ&A

  • VLOOKUPの複数参照先

    こんばんは。 エクセルのVLOOKUPでの質問があります。 よろしくお願いします。 1つのbookの中にA,B,C,D...とシートがあります。 Aのシートにて、VLOOKUPを使ってデータの参照をしたいのですが、 B,C,D・・の複数のシートを参照先にしたいのですが、 可能なのでしょうか。 検索先の文字列に応じて検索シート先を変えられれば・・と 思っています。 もう一つ、参照先に目的の値がなかった場合、#N/Aが表示されるのですが、これを1などの数字にすることはできないでしょうか。 お願い致します。

  • エクセルVLOOKUP関数の参照先に関して

    エクセルのVLOOKUP関数に関する質問です。 BOOK(1)とBOOK(2)(それぞれは別フォルダに入っています)があり、 BOOK(1)の中でVLOOKUP関数を用いて、BOOK(2)からデータを参照しています。 参照先のBOOK(2)は管理者以外読み取り専用となっていますが、 たとえ保存できなくても誰かがデータを書き換えたり、別名で保存したりすると、VLOOKUPの参照結果も、書き換え後のデータ(別名保存したファイル)になってしまうようです。 希望としては、VLOOKUPの参照先であるBOOK(2)を固定したいです。 この件に関して、対処法はありますでしょうか。

  • Vlookup関数の参照元ファイルについて

    当たり前の事なのかもしれませんが教えてください。 友人宅で使用しているエクセルファイルがメールで届きました。 そのファイルを私のPCで確認したところ、 Vlookで参照している参照元データは添付されていないのですが、 ちゃんとデータを表示しているのです。 その関数を別のファイルに貼り付けても検索ができますし、 検索値に別の値(参照元データにある)を入力しても 列番号を変更しても、ちゃんと検索表示しています。 Vlook関数を張り付ける際に「値の更新:○○,xls」というウィンドウは開きますが、 ○○,xlsというファイルは存在しませんし、更新は「キャンセル」しています。 参照元データは友人宅のネットワークサーバーにある別のエクセルファイル(○○,xls)です。 もちろん、私のPCとは繋がっていません。 私のPCにはそのファイルはありません。 私の認識では、Vlookupで別のファイルを参照している場合、 参照元ファイルがないとエラー値となると思っていました。 エクセルファイルは一旦別のファイルを参照すると参照元データを全て記憶しているのでしょうか? それとも参照元ファイルの実態はなくても、コピーした時点でデータとして一緒にどこかに存在するのでしょうか? 「値の更新」?をしなければ、その架空の参照元ファイル?から検索が可能なのでしょうか? もしそうだとすると、職場で別ファイルを参照している関数付きのエクセルファイルを 相手先に誤って添付してしまった際に、 添付していないはずの参照元ファイルのデータが相手先に検索出来てしまう、、 という事になります。(そのような事は滅多にありませんが・・) 因みに私はexcel2007 友人はexcel2010を使用しています。 送られてきたファイルは.xlsxですが、参照元ファイルは2003で作成した.xlsのようです。 私の認識不足で恥ずかしい限りですが、教えください。

  • エクセル・コピー後の参照先の範囲が変わらない

    エクセル2007です。 VLOOK関数と条件付書式が入った表が2つあり、参照先(絶対参照)のリストは それぞれ表の下部に作っています。 2つの表を合わせたいので、表2を挿入して貼り付けたのですが、 参照先のリストの範囲が変わらずエラーになってしまいます。 下のリスト内に値があればセルの色が変わるという条件付書式も 元のセルの範囲のままで色が変わりません。 貼り付け先の表1は参照先が自動的にずれてOKだったのですが、 表2の参照先は変えられないのでしょうか? 文章でわかりづらくてすみません。

  • VLOOKUP で 参照先が空白の時エラーにならないようにしたい

    VLOOKUP で 参照先が空白の時エラーにならないようにしたい VLOOKUP($A41,'4回目'!$A$7:$K$378,8,TRUE)このような式ですが IFなど どのように書いてよいかわかりません お願いします。

  • Excel VLOOKUPで返ってきた値に日付を入れたい

    Excelで条件と合致する値を割り出し(VLOOKUPやIFを使用)返ってきた値(合致した結果に対して)に今日の日付(TODAY)いのですが、上手くできません… TODAY関数とVLOOKUPを合わせるやり方 IFとTODAYを合わせるやり方 どっちでも試したのですが、上手く関数が組めていないようです… 宜しくお願いいたします。

  • 【エクセル】一部列を除いて一括で値貼り付けする方法

    こんにちは。 エクセルで下記の通りVlookupにて他のファイルから値を参照し、小計・合計を 出しています。 ただ、参照先ファイルとのマッチングしなかった場合は#N/Aが返ってきてしまいます。 ISNA関数を使用し「0」に置き換えることも考えましたが他ファイルから参照する 値がかなり多く、また参照箇所もバラバラで関数を組み込むだけでかなりの稼動に なってしまいます。 小計または合計以外について値貼り付けをしたのち、値貼り付けした部分を置換にて #N/Aを0に置き換える方法が一番効率的ではないかと思っております。 ただ、小計・合計の列を除いて値の貼り付けをする作業もかなりの稼動となってしまいます。 小計・合計の列を非表示にして値貼り付けしたなども試してみましたが、小計・合計について も値貼り付けされてしまいます。 小計・合計の列以外(一部の列を除いて)一括で値貼り付けする方法はありますでしょうか。 保護の機能も試しましたが上手くいきませんでした。 また別の方法でも構いません。良い方法がありましたらご教授ください。 説明が下手で分かりずらいかもしれませんがどうぞよろしくお願いいたします。      セルA  セルB              1  …   Vlookupで他のファイルより参照       #N/A  …   Vlookupで他のファイルより参照         3  …   Vlookupで他のファイルより参照 小計   #N/A …   上記値を足仕込むSum関数         4  …   Vlookupで他のファイルより参照         5  …   Vlookupで他のファイルより参照       #N/A  …   Vlookupで他のファイルより参照 小計   #N/A  …  上記値を足仕込むSum関数 合計   #N/A  …  合計

  • VLOOKUP関数とテキストボックスの連携

    エクセルでユーザーフォームを作成しています。 「テキストボックス11」に、以下のように、VLOOKUP関数を入れたいのですが、 どのようにしたら良いのか、わかりません。 ●入れたい関数は ISERROR関数とVLOOKUP関数を組み合わせたもの。 =if(iserror(vlookup(「コンボボックス1」の値,マスタ!A80:D90,4,false)),""vlookup(「コンボボックス1」の値,マスタ!A80:D90,4,false)) (1)「コンボボックス1」の値を検索値とする。 (2)参照範囲は「マスタ」シートの「A80:D90」 失敗しているVBAは以下の通りです。 Private Sub UserForm_Initialize() TextBox11.Value = Application.WorksheetFunction.if(iserror(VLookup(ComboBox1.Value, Range("A85:D94"), 4)),"",VLookup(ComboBox1.Value, Range("A85:D94"), 4)) End Sub 教えていただけると助かります。

  • VLOOKUP関数でセルのいろもコピーするには?

    エクセルで VLOOKUP 関数を使用して値を参照したとき、参照元のセルの色もコピーしたいのですがどうしたら良いのでしょうか?

  • VLOOKUP参照先へ素早く移動

    ExcelでVLOOKUPを使って記録管理作業をしています。 その際、状況の変化に伴って、参照先のデータ変更が必要になる場合があります。 業務の都合上参照先のデータは別のファイルにあり、またデータの数も多いので、 目的の変更箇所に辿り着くのに少々手間が掛かります。ハイパーリンク等で素早く 移動できたらと思うのですが、何か良い方法ってないのでしょうか。 とりあえずは一応、自分なりに下記のような方法を試してはみました。 (1)参照先のデータの各行最右端のセルに、行の頭に移動するハイパーリンクを作成。 (2)VLOOKUPの表示項目に、そのハイパーリンクのある箇所を追加。 こうすれば、VLOOKUPで表示されたハイパーリンクをクリックするだけで 参照元のデータの場所まで一発で移動できるだろう……と思っていたのですが 結果は、ハイパーリンクは機能せず文字が表示されるだけでした。 VLOOKUPでもハイパーリンクが生きている方法や、全く他の何らかの方法でも 構いませんので、良い方法を教えて頂けたら嬉しいです。よろしくお願い致します。