まず、関数の入れ子を使って下記の戻り値を求めました。
SUM関数のセル範囲をINDIRECT、ADDRESS、MATCHを使うことで、SUM関数内をいじらずに指定しているセルから検索してセル範囲をある程度自在に動かす。
下記はMATCHが参照しているExcel内の表です。
(実際のExce画面を添付してます)
A列 │B列 │
日付 │データ1│
2024/1/1│1 │
2024/1/2│2 │
・
・
・
2024/1/31│31 │
F2 │G2 │
2024/1/1│2024/1/31│
続いては、上の表を使って入力した関数です。
=SUM(INDIRECT(ADDRESS(MATCH(F2,A:A,),2,4)):INDIRECT(ADDRESS(MATCH(G2,A:A,),2,4)))
この関数からの戻り値は「496」となり、ここまでは問題なく動作しました。
本番の環境は別シートにある数値を集計する必要があるため、下記のように入力しました。
=SUM(INDIRECT(ADDRESS(MATCH(F2,データ!A:A,),2,4)):INDIRECT(ADDRESS(MATCH(G2,データ!A:A,),2,4)))
戻り値は「495」となり、どうやらセル範囲が一つずれているようでした。
試しに検索値を「2024/1/10」「2024/1/20」と入力したら「176」となり、やはりセル範囲がずれて「2024/1/11」~「024/1/21」の範囲を集計していました。
この現象は別シートが起因だと思われますが、最初作った表との差異はデータ1行分下にあることです。
ただ、MATCHの範囲指定はA:Aとしているため、1行分の違いがあるなしでズレる原因わかりません。
長文にも関わらず意味不明な説明となっていたら大変恐縮ですが、ご教授いただければ幸いです。
No.3ベストアンサー
- 回答日時:
こんばんは
原因は
ADDRESS(MATCH(F2,データ!A:A,),2,4)
部分を計算させてみればわかると思いますが、この結果はセルアドレスだけになります。(シート名は付きません)
ですので、ご提示の2番目の式の実際の参照先は、A列はデータシートを参照しているけれども、SUMの対象となるB列は自シートを参照しているということではないかと推測します。
ふたつのシートでデータの位置が1行分ずれているのではないでしょうか?
あるいは、自シートのB列をクリアしたら結果が変わりませんか?
実は、ご提示の式をエクセルがどのようにして解釈してくれるのか不思議ですけれど、最初にご提示の式は論理的に考えると
=SUM(INDIRECT(ADDRESS(MATCH(F2,A:A,),2,4) & ":" & ADDRESS(MATCH(G2,A:A,),2,4)))
となるのではないでしょうか?
とは言え、アドレスを作成してINDIRECT関数に頼るというのはあまり感心できる方法とは思えません。
『F2、G2セルの日付の間にあるB列の和を求めたい』ということだろうと推測しますので、素直に
=SUMIFS(B:B,A:A,">="&F2,A:A,"<="&G2)
ではダメなのでしょうか?
こちらの関数式であれば、元データ(A,B列)が順序だって並んでいなくても計算は可能です。
No.2
- 回答日時:
=SUM(INDIRECT("データ!"&ADDRESS(MATCH(F2,データ!A:A,),2,4)):INDIRECT("データ!"&ADDRESS(MATCH(G2,データ!A:A,),2,4)))
こうですかね?
MATCH、ADRESSで別シート(データシート)でヒットするセルの位置(B3とか)はとれていますが、INDIRECTの時にB3をそのまま使ってしまっているので、本シートの位置として取り扱ってしまっているんだと思います。
なので、B3ではなくデータ!B3の形になればいいかと。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロを教えてください 4 2022/02/04 08:05
- Excel(エクセル) Excelでなぜこのような式をつかっているのでしょうか、行に1,2,3と連番を振るだけなのに 5 2023/04/08 20:00
- Excel(エクセル) エクセルの数式について ブック内の別シートの値の含まれたセルの個数を集計したい 全シート一覧のシート 1 2022/07/21 19:28
- Excel(エクセル) [Excel] 2つの表のセル同士の突合方法について質問です。 添付の表で、 {=AND(EXACT 4 2023/09/06 22:35
- Excel(エクセル) エクセルでエラーを無視して一番左側のセルの値を返したい 2 2023/07/27 13:06
- Visual Basic(VBA) 最終列の右へSUM関数を作成するため下記コードを実行しましたが、最終列「10月28日」が上書きされて 3 2022/12/05 20:32
- Excel(エクセル) エクセル 条件に合う日付に入力された時間数の合計したい 4 2022/06/17 22:18
- Excel(エクセル) 条件に合った数値の合計を表示させたい関数と条件指定の方法 3 2023/05/13 16:07
- Visual Basic(VBA) VBA コード 4 2023/12/12 16:24
- Excel(エクセル) エクセルで値ではなく関数を参照する方法 6 2023/03/19 00:50
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
Excelファイルが閉じられい!
Excel(エクセル)
-
エクセルのセル統合について
Excel(エクセル)
-
IF関数
Excel(エクセル)
-
-
4
エクセル詳しい方教えて下さい
Excel(エクセル)
-
5
曜日の 月 を (月) と表示させる方法について
Excel(エクセル)
-
6
なぜか「Nextに対応するForがありません」
Excel(エクセル)
-
7
同じ型【ハイフンと数字】をぶつけて、イコールである事を証明する関数はありますか?
Excel(エクセル)
-
8
Excelのテーブルでmatch関数の使い方について
Excel(エクセル)
-
9
Excel 領収書発行
Excel(エクセル)
-
10
Excel関数の質問になります
Excel(エクセル)
-
11
エクセルの表の参照値から円を取って数字で扱えるようにしたい
Excel(エクセル)
-
12
excelの不要な行の削除ができない!
Excel(エクセル)
-
13
Excel 大なり小なりを表すとき、 例えば「10以上」なら、>=10 と表せますが、 この10の部
Excel(エクセル)
-
14
“丸(〇/○/◯)”に似た文字…
Excel(エクセル)
-
15
式の解読のお願いm(_._)m
Excel(エクセル)
-
16
Excelで文字合成
Excel(エクセル)
-
17
数値から名前が作成できなくなっているッ!?
Excel(エクセル)
-
18
当番表の作成について
Excel(エクセル)
-
19
Excelでこういう年を切り替えられる簡易なカレンダーを作ったのですが、 年や月を変えると、色が付い
Excel(エクセル)
-
20
<急募>エクセルデータの関数を用いた並び替えについて
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelはなんで先頭の0を消すん...
-
Excel元に戻す方法を教えてくだ...
-
【Microsoft Office Excel Comp...
-
Excelが固まってしまった。
-
西暦や和暦の表示をyyyymmdd表...
-
Excel 2019 のピボットテーブル...
-
【関数】スペースがいくつ入っ...
-
【Excel】セル内の時間帯が特定...
-
excelの不要な行の削除ができな...
-
Excelのオートフィル
-
別シートからの文字を変更
-
Excelのセルを飛ばして入力する
-
Excel初心者です。 詳しい方、...
-
エクセルの行の抽出について質...
-
Excel初心者です。 詳しい方、...
-
【マクロ】エクセルにかいてあ...
-
EXACT関数とIF関数の組み合わせ...
-
スプレッドシート クエリ関数 1...
-
エクセルで指定した日付、店舗...
-
Excelのグラフ軸について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル内にある数字の出現回...
-
Excel関数の先頭に「@」が入っ...
-
エクセルの気味悪い不思議
-
Excel VBAで、実行時にsheet上...
-
表示されている人数だけを数え...
-
他人が作ったマクロの理解
-
Excelの関数について質問です。
-
Excel 集計表
-
エクセル 日時の計算式について
-
Excelの関数に関して質問です。...
-
エクセル:セル内の文字列の下...
-
絞り込み検索
-
エクセルの関数で
-
エクセルの書式設定について教...
-
余分なEXCELファイルに印刷され...
-
VBA 同一シート内での転記の仕方
-
長期休みの関数はありますか
-
Excelの空のセル
-
エクセルで入力してある文を別...
-
Excelのマクロで、セルを結合し...
おすすめ情報