• ベストアンサー

エクセルでの質問です

エクセルで例えば”シート1”のセルA1にある金額を ”シート2”のセルB1に入るようにリンクさせていて、 ”シート2”を『移動してコピー』をして ”シート3”を作った時に”シート1”のセルA1と ”シート3”のB1がリンクしたままコピーになるのを ”シート3”を作ったら、”シート2”のA1にリンク、”シート4”を作ったら、”シート3”のA1にリンク・・というようにずれて行ってくれたら 便利だな。。と思うのですが 無理でしょうか? よろしくお願いします。

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

  • ベストアンサー
noname#132211
noname#132211
回答No.3

皆さんの言うとおり簡単にはできないと思いますが、 条件さえあえばできるかもしれません。 長くてややこしいので、役に立つかどうかは微妙ですが…、 それと、やりたいことと違っていたらすいません。 もっとすばらしい方法もあると思いますので、 気が向いた時に、参考までに。 条件【一】シート名の変化をコピーした時に作成されるもので変更はしない   *簡単に言うと、シートをコピーすると    "「元のシート名」 (1)"    と言うふうにコピーされるので、このまま変更しないということです。    コピーを続けると(2)、(3)と続いていきます。 条件【ニ】常に数字が前のシートを参照する   *(2)は(1)の残高を、(3)は(2)の残高を参照します。 以上の条件でよければ、以下のことを試してみてください。 ※新しいブックで試す場合、適当にファイルネームを付けて一度保存してください。  (Book1)という名前ではうまくいきません。 ※今回はSheet1のシート名を「残高 (1)」としますので、シート名を変更して下さい。  「残高」の後に半角スペースあります。 A1にシート名 A2に繰越高 A4に残高 を表示させるとして、 A1=MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1))+1,31) A2=INDIRECT(ADDRESS(4,1,1,1,"残高 "&"("&(MID($A$1,5,IF(LEN($A$1)>6,2,1))-1)&")"),1) A4=SUM(A2:A3) と入力してシートをコピーしてください。 そうすると、「残高 (1)」「残高 (2)」というシートができますね。 「残高 (1)」の繰越額は参考にする前のシートがないのでエラーがでます。 ですので、「残高 (1)」のA2の式を消して完成です。 後はA3に値を入れて試して見てください。 「残高 (1)」のA3に100を入れると、A4はもちろん100です。  「残高 (2)」のA2繰越額を見ると、   「残高 (1)」のA4の値で100になっているはずです。    これを繰り返すと、つねに前のシートの値を参照して引っ張ってくると思います。 長くてすいません… 以上のような方法ではどうでしょうか?

その他の回答 (3)

noname#8027
noname#8027
回答No.4

#1です。 1日ごとに1枚のシートをつくるのでしょうか? シート自体を作成するところから始めるマクロを作ると、 できると思います。A1のセルへの数式は自分でプログラム する必要があります。シートの名前自体を変数とすると、 できると思います。 sheet4を作成したときは、sheet3を参照するというように。

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

それは不可能でしょう。 何に基づいて変化せるか。 普通のシート内の複写の場合はセルの行(列)の変化に合わせて変化させているのです。 しかしシートの変化(Sheet1はシート名の一時の仮の姿で、変化する)に合わせて、変化する仕組みはありません。 シートにはIndex番号もありますが、左からの順番番号であったりして動かせるので、シートの変化をどう割り出したら良いか、エクセルシステム技術者でも難しい気がする。 VBAで前月のシートを探し、前月残のセルの値をセットする よりほかないのでは。 あるいは各月の前月残を記録するシートを1つに絞って作り、そこから、次月シートは前月残の数字を引いてくるとか。

noname#8027
noname#8027
回答No.1

あまり便利だと思いません。 どういう意図で、便利に思うのか教えてもらえれば、それ に対応する回答があるかもしれません。

makipee
質問者

補足

残高を次の日にリンクさせていくように したいからです。 やり方を知っておられるなら 教えて頂きたいです。

関連するQ&A