• 締切済み

Excel、ページを跨ぐ計算について

Excelのシートを跨いだ計算についてです。 1シートの中での計算はできました。 (例えば「A」というシートから「D」というシートの中の複数(A、B、C、D)シートの、P4のセルの値を足す) ただ、これだとそのシートをコピーした時、当然シートの名前が変わってしまうのでエラーになってしまいます。 (例えば、「E」というシートを作ってAからEのシートのP4が足された値を計算したいのに、セルの値にはAからDがコピーされているからエラーになる) この場合、セルの値に「シート名」までのP4の値を足す、という指示を入力するにはどうしたらいいのでしょうか?毎週作るものなので、毎回セルの値を直すのが面倒です。 可能であれば、ですが教えていただきたいです。 マクロのことは勉強不足ですが、やはりその知識が必要でしょうか?

みんなの回答

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

何のことを聞いているのかよく判らない。 >ページを跨ぐ計算 エクセルの関数で、「ページ」という考えは出てきません。 具体的に4シートに限定で、1つのケース(セルやセル範囲で)でシート具体名を使い、関数はSUM関数(集計関数の1つとして)として、どういう計算をしたいのか、下記表してみたら。 (注)集計関数 https://docs.snowflake.com/ja/sql-reference/functions-aggregation.html 集合の多数要素(数)から1つの数に写像する。SUM、MIN、MAX、AVG、,COUNT, STDなど。 ーー そしてその後、その式のこの部分は変更されても式を変えなくて済むような式を希望するとか、付記して、質問する。 >「D」というシートの中の複数(A、B、C、D)シート なんのことを言っているのか? 全般にエクセルの(関数さえも)経験が少なく、「エクセルの言葉で!」質問で来てない。 ましてVBAなど言及するのは、時期尚早とお見受けするが。 他のご回答にデータベースという言葉もでているが、そういう知識も必要だと思う。 (1)単独セルの複数セル分を使って演算    これなら望みの関数があれば、見込みはある。 (2)結果が複数出てくるような処理    これは難しい式になる。 (3)使う(引数で指定する)データのセルの場所が、変動するタイプも、エクセル関数では難しい。 (4)シートに関し、普通対象シートの変動(増減)までカバーするのは、 例えばSUM関数の式の作成において、Shiftキーを押しながら集計したいシートの最初と最後のシートをクリック =SUM(Sheet2:Sheet4!A1)のような式ぐらいかな。 これだと範囲の間(シートタブの位置的に中間)にシートを増やしても式はそのままでよい。シートタブが範囲外だとダメ(合計に含まれない)。シートタブ位置で中間のシート削除もOK。もちろん結果は変わる。

  • SI299792
  • ベストアンサー率48% (713/1473)
回答No.3

文章を読んでも何をしたいのかよくわからないのですが、シートの追加、削除、変更しても加算したいという事であれば、 ダミーでStart,End というシートを作っておいて、 =SUM(Start:End!P4) にします。 Start とEnd の間に A B C D を入れて置けば、 シートコピーは自由です。

回答No.2

エクセルで出来る限界を超えています、どうしてもエクセルでと言うなら、PhytonやVBAなどでプログラムを作成するしか無いでしょうが、かなり大変だと思います。 このレベルの作業は本来データーベースを使うべき作業になります。 ただエクセルでも貴方の言われるような結果には出来ます、それはピポットテーブルを使う方法です。 全データが記載できるマスターテーブルを作り(例えばA,B,C,Dと言うページでなく項目を作る)、そこから必要な項目だけをピポットテーブルで表示する方法で、つまり最初から全データーが入るように設計する(データーベースも同じです)つまりデザイや大きさなど考慮する必要がない、シートを作り、全データーを入力する。 ピポットテーブルでは決められたデザインの表にセルでなく項目を割り振るだけなので、変更点が非常に簡素化出来ます。

回答No.1

マクロの知識は不要です。 シート名にビックリマークをつけた式を入れましょう。

関連するQ&A

  • Excel マクロの構文

    次のマクロを記入したいのですが、うまくいきません 教えてください。 セルの値は5桁の整数です セル"D2"の値 - セル"A1"の値 が -30以下であれば セル"E2"に セル"D2"の値を表示 そうでないときは 空白で表示 この計算を セル"D12" - セル"A11" 結果を セル"E12" セル"D22" - セル"A21" 結果を セル"E22" のように10行とびごとに        セル"D102" - セル"A101" 結果を セル"E102" まで10回繰り返し計算したいのですがうまくいきません 何方か、このマクロの記入を教えてください お願いします。

  • Excel(エクセル)で非表示シートをVBAで計算するには?

    よろしくお願いします。 エクセルで1つのブックにAシート~Fシートまであるとします。 再計算させると、すべてのシートを再計算してしまうため時間がかかるので、マクロの自動記録を利用して「Aシート→Bシート→Cシート→Dシート→Eシート」と、必要なシートだけを順番に計算させる事で、処理時間短縮をさせる事をする事ができました。 EシートとFシートは表示させておいて、その他のA~Dシートは非表示にしました。 Eシートには、A~Dシートで計算した結果が表示されるようになっています。 ですが、A~Dシートを非表示にして作成したマクロを実行すると、エラーが出てしまい上手くできません。 A~Dシートを非表示にしていても、ブック全体を再計算させる事はできます。 非表示にしたシートをマクロで計算させるには、どのようにしたら良いでしょか? アドバイスをお願い致します。 登録したマクロは下記のようになっています。 Sub 計算() Sheets("Aシート").Select ActiveWorkbook.PrecisionAsDisplayed = False ActiveSheet.Calculate Sheets("Bシート").Select ActiveWorkbook.PrecisionAsDisplayed = False ActiveSheet.Calculate Sheets("Cシート").Select ActiveWorkbook.PrecisionAsDisplayed = False ActiveSheet.Calculate Sheets("Dシート").Select ActiveWorkbook.PrecisionAsDisplayed = False ActiveSheet.Calculate Sheets("Eシート").Select ActiveWorkbook.PrecisionAsDisplayed = False ActiveSheet.Calculate Sheets("Eシート").Select End Sub

  • エクセルの計算式を教えてください!

    誠に申し訳ありませんが、わかりましたら、教えてください。 エクセルの計算式でE1のセルに次の計算式があった時に =VLOOKUP(B1,$F$1:$G$10,2,FALSE)この式は、成り立っています。 「この時にもう1つ条件をつけて、A1のセルの値が1から20までの値に対して範囲を変えることはできますか。たとえばA1セルが1のときは、$F$1:$G$10ですが、A1セルが2のときの範囲は$F$11:$G$20、A1が3のときの範囲は$F$21:$G$30のように範囲はFとGと規則正しくタテ列に20種類あります、また、E列は1から1000のセルがあって計算式をコピー します。」わかりましたら、計算式を書いてお教えください。

  • エクセルで計算結果の最適を簡単にもとめたい。

    エクセルの表を使い多くの変数で計算するとき、計算結果を ある値に近つけたいときがあります。 たとえばA1セル、A2セル、・・・・・・・と変数が入っていて、その 計算結果をG1セルに入っている。 G1セルの答えが100になるA1セルの値は、いくつか?とか」です。 いまのやり方だと。まず、A1セルに適当に2を入れてみる。次に A1セルに3を入れてみる。そうすると2の方が近いので、今度は、 2.2をいれる、とかしていったりきたりして、2.33とかの答えを 求めています。 他の方法として、計算の表をたとえば10個作って、A1セルとG1セル の10個の値を表にして、10個分まとめて計算させる」とかが考えられ ますがこれも表がおおきいとあまり賢い方法とは思えません。 マクロを使わずにいい方法があれば教えてください。 マクロを使わないとできないなら、マクロの使い方から教えて いただきたく。(たとえばここのサイトを見ればいいよ」とかでも OKです。

  • エクセル2000の計算式について

    お世話になります。 エクセルで、B2セルに数値を入力すると その数値を予めC2のセルに入力されていた数値で割った値を D2に返すようD2セルに計算式を入力しているのですが、 昨日、いつもの様に数値を入力し、画面上では正常な値が出ているのを 確認したのですが、そのシートを印刷した所、 「4.08E+308」という値が印刷されました。 全く原因がわからないのですが、 ご存じの方がおられましたら 教えて頂けないでしょうか。 よろしくお願い致します。

  • エクセルの計算式のコピーについて

    「A」ファイルにおいて、 「シート1」の一つのセルの中に「シート2」の一つのセルを参照する という計算式があります。 この計算式を、 「A」ファイルと全く同じシート構成である「B」ファイルの 「シート1」の同じセルにコピーすると、 「B」ファイルの「シート2」を参照して欲しいのに、 「A」ファイルの「シート2」を参照するようになってしまいます。 どうしたら上手くいくでしょうか? 分かりにくい質問かもしれませんが、 なにとぞよろしくお願い致します。

  • Excel で計算式のコピーをしたいのだけど、一つのセルは固定して使いたい

    こんなことをしたいです。 セルD2=数値 セルA3=数値 セルB3=計算式 =if(D2>A3,"○","×") このあと、セルA3~A100まで数値が入ります。 セルB4~B100まではB3の計算式コピーして、同様の比較をしたいのですが、セルD2の値をずっと使いたいです。 計算式のコピーでは自動的に行数を代えてくれるのは普段はありがたいのですが、今回はD2の部分は固定にしたいです。セルB3の計算式の記述で何とかなると思うのですがどのように変えたらよいか?是非教えてください。

  • エクセルの串刺し計算で・・・

    エクセル2000で質問です。 シート1~シート8まで同じ形式のシートが有ります。 その中でシート1のみセルE20にE列の合計が入っています。 シート2~シート8にはそれぞれE列の合計はセルE25に 入っています。 シート1のD10にそのすべての合計を計算させて表示させる場合の 方法を教えて下さい。

  • EXCELの計算結果を値コピーするとおかしな値になる

    EXCEL2003を使っていますが、ふとしたことで気になることがあります。 下記のような簡単な計算とコピー作業なのですがコピーした値がおかしいのです。 ・セルA1に420.2を入力する。 ・セルB1に420.3を入力する。 ・セルC1に =A1-B1 の計算式を入れる。 ・セルD1にC1のコピーを形式選択貼り付けで”値”のみ貼り付けする。 すると、セルD1には-0.1が表示されるのですが、ワークシート上段の普段入力とかをするエリアには-0.100000000000023が表示されています。 普通は別に困らないのですが、計算結果が-0.2とかになると-0.199999999999989になりヒストグラム等では頻度のカウントがひとつ繰り上がってしまいます。 (値コピー先ではなく計算結果でヒストグラムをとっても同じ結果になります。) Officeのヘルプも一応見てみたのですが、検索文言がややこしくて見つけられませんでした。簡単なことを見逃しているかも知れませんがアドバイスお願いします。

  • Excelの関数またはマクロを教えて下さい。

    Exsel2000の関数で、現在以下の関数まで出来たのですが、これを応用して検索値「A1」を2つのセル「A1&B1」にしたいのですが、どうすればよいのでしょうか?どなたか方法を教えて下さい。 =VLOOKUP(A1,Sheet1!$A$1:$E$2000,4) 上記の関数から判るように、これは 例えばSheet2のC1のセルにこの式を入れる場合、A1と同じ内容の値を、Sheet1のA列から検索して、そして同じ行のSheet1のD列の値をSheet2のC1のセルに返すという関数です。 これを応用して、「A1と同じ内容…のA1を、A1&B1の2つが一致するセルを検索して、同じ列のSheet1のD列の値をSheet2のC1のセルに返すという関数にしたいのです。 どなたかおわかりになる方がおりました宜しくお願いいたします。 また、マクロを使う方法でも良いのですが、当方マクロは詳しくないので出来るだけ判りやすくお願いいたします。

専門家に質問してみよう