• 締切済み

excelでのリンク?

画像にあるように、同ブック内のSheet間で『売上』Sheetのデータを 左の『請求内訳書』に引っ張っています。 このリンク元である『売上』Sheetのデータを移動させた場合、リンク先である『請求内訳書』の 数式も一緒に移動してしまい、本来表示させたい値になりません。 例えば、売上Sheetの4行目と5行目の間に行を挿入したとすると、請求内訳書のデータは、 行を挿入しても変更されません。【下の画像】 並べ替えだと変わります。 リンク元のデータを変更したら、リンク先のデータも変わるようにするにはどうすればいいのでしょう。 あと、変更する度にリンク先のセルの書式が文字列に変更されてしまいます。 これも回避したいのですが。 どうかよろしくお願い致します。 WindowsXP Excel2007

みんなの回答

  • tsubuyuki
  • ベストアンサー率45% (699/1545)
回答No.3

一つの代案として、です。根本的な解決ではありません。 ごくごく単純に「売上シートのB4セルを、請求内訳書のA3セルに反映」させ、 以下「売上シートに行挿入(行削除)されても、請求内訳書の参照セルをずらさない」式です。   請求内訳書のA3セル:=INDIRECT("売上!B"&ROW()-1)    (以下行は必要分フィル) 恐らく、数量・単位・単価の列にも適用可能です。 が、金額は微妙に違うようなので適宜応用ください。 ちなみに数値の表示形式も狂いません。 なおこの式は、返り値「0」に関しては全く考慮していません。 IF関数・数値の表示形式など、お好きな方法を採用ください。 INDIRECT関数については、別途お調べくださいませ。

回答No.2

レコードなんだから、1行コピーして、コピーしたものを挿入する、そして上書きする、ゴク常識的なアクションだと思いますが、、、 コレでもダメ??

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

売上シートのB4:B10に商品名を文字列で記載することにしています リンク先シートの該当セルには B3: =INDEX(売上!B:B,ROW(A4))&"" 以下コピー しておきます。 売上シートのC4:C10に数量を数値で記入することにしています リンク先シートの該当セルには E3: =IF(INDEX(売上!C:C,ROW(A4))="","",INDEX(売上!C:C,ROW(A4))) 以下コピー としておきます。 #参考 利上シートに「イミのあるゼロ」が記入されることは「ない」と保証できるのであれば,参照式は =INDEX(売上!C:C,ROW(A4)) だけにしておき,書式設定でゼロの表示を消す事でもイイです。 セルの書式設定の表示形式のユーザー定義で #,### と設定しておくなど。

関連するQ&A