
No.6ベストアンサー
- 回答日時:
ちょっと気になったので一言だけ。
別の人がこのシートを使って試算をしたとします。保存しなければいいやと思ってバッテンをクリックしたら「保存しますか」のメッセージが出ずに、いきなり保存されてしまいました。ってことのなりませんか。
ここは作業列を作ってシンプルな式で対応した方が安全な気がします。
今晩は、回答ありがとうございます。
ご指摘の点については、当方もそれ恐れていて、まだ良いアイデアをご教示頂けるのではないかと本スレッドを閉めないでいました。
やっぱり、作業列を使った正攻法が正解のようですネ。
No.5
- 回答日時:
No.4の回答者です。
Excel2013 で試してみました。INDEX関数を含めて、試してみましたが、
「○○(ファイル名)の変更内容を保存しますか?」
は、どれでも出てしまいます。INDEX関数は、単独なら、メッセージは出ませんが、SUM関数の中に入れてしまうと、終了時にメーセージが出てしまいます。
ですから、その表示を止めたいのでしたら、ThisWorkbook モジュールに、メッセージが出ないように登録しなければならないです。
'//ThisWorkbook
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Saved = False Then
ThisWorkbook.Save
End If
End Sub
今晩は。
当方、Excel 2016ですが、教えて頂きましたINDIRECT関数を使用しない下記式でも、ブックに変更がなくても、Excelの終了時にブックの保存が必要かどうか尋ねられますね。
=SUM(INDEX(A1:E5000,MATCH("2018*",A:A,0)+2,5):INDEX(A1:E5000,MATCH("2018*",C:C,0)-1,5))
教えて頂きましたイベントプロシージャで同じように対処したいと思います。
先の質問から度々サポート頂き助かっています。ありがとうございます。
No.4
- 回答日時:
>このINDIRECT関数により、ブックに変更がなくても終了時にブックの保存の要否が尋ねられます。
これが、『揮発性関数』の特徴です。前回、書いた内容で一つ訂正
値をその関数の中で確保できないからです。
>このどちら(OFFSET, INDEX)も不揮発性関数です。
OFFSET 関数は、揮発性でした。
Microsoft の記事
//NOW,TODAY,RANDBETWEEN,OFFSET,INDIRECT,
INFO (引数によって異なります) CELL (引数によって異なります),SUMIF (引数によって異なります)//
https://docs.microsoft.com/ja-jp/office/client-d …
ということで、使えるものは、INDEX 関数になります。ただし、バージョンに依存性があります。昔は、INDEX関数も、揮発性だったけれども、どこかのバージョンでかわったわけで、上記の記事ですと、EXCEL 2013になっています。
F2 =MATCH("AAA",A:A,0)
F3 =MATCH("ZZZ",C:C,0)
=SUM(INDEX(A1:D100,F2,4):INDEX(A1:D100,F3,4))
前回の私の書き込みを御覧ください。
No.3
- 回答日時:
こんばんは!
1行目が項目行で、データが2行目以降にある!というコトであれば・・・
=SUM(OFFSET(E1,,,MATCH("AAA",C:C,0)))-SUM(OFFSET(E1,,,MATCH("AAA",A:A,0)-1))
または
=SUM(OFFSET(E1,MATCH("AAA",A:A,0)-1,,MATCH("AAA",C:C,0)-(MATCH("AAA",A:A,0)-1)))
ではどうでしょうか?
※ C列の「AAA」の方がA列の「AAA」の行以降にあるという前提です。
(C列の方がA列より早く出現すると「0」またはエラーになります)
細かい検証はしていませんので
お望みどおりにならなかったらごめんなさい。m(_ _)m
今晩は、回答ありがとうございます。
INDIRECT関数の使用を回避する目的は、ブックに変更がなくてもブックを保存がするかどうか尋ねられるのを避けるためです。
従いまして、OFFSET関数はINDIRECT関数と同様に揮発性のため、残念ながら解決にはならないですね。
No.2
- 回答日時:
あぁ、失礼、
使い方解説を 逃しましたね。
OFFSET構文、
http://officetanaka.net/excel/function/function/ …
INDEX構文、
https://support.office.com/ja-jp/article/index-% …
https://www.forguncy.com/blog/20170113_index_match
後で、時間あったら
もっと 検討してみますが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) AVERAGE関数とINDIRECT関数を使ってのオートフィル 3 2023/01/12 12:00
- Excel(エクセル) Indirect関数について、Formulatextで抽出した数式を参照したい。 1 2022/12/15 11:16
- Excel(エクセル) excelのindirect関数の別ブック参照について質問です。 1 2022/06/03 15:17
- Excel(エクセル) 特定の文字の合計値(空白を無視+可変に対応)を求める関数について 1 2022/08/18 10:51
- Excel(エクセル) エクセルのINDEXについて 2 2022/04/17 21:41
- Excel(エクセル) Excelでなぜこのような式をつかっているのでしょうか、行に1,2,3と連番を振るだけなのに 5 2023/04/08 20:00
- Excel(エクセル) Excelで行削除をすると… 1 2023/07/26 11:57
- Excel(エクセル) エクセル 指定セル繰り返しマクロ 4 2022/06/06 17:08
- Excel(エクセル) エクセルの数式について ブック内の別シートの値の含まれたセルの個数を集計したい 全シート一覧のシート 1 2022/07/21 19:28
- Excel(エクセル) Excel(エクセル)でフィルター抽出後、非表示の行を計算しないで、合計を算出する方法 【内容】 添 4 2023/01/30 17:17
このQ&Aを見た人はこんなQ&Aも見ています
-
別ファイルを開かず、INDIRECT関数を使用せずに、別ファイルのデータを求めたい
Excel(エクセル)
-
関数が“揮発性”か“不揮発性”かを知る方法は?
Excel(エクセル)
-
特定のシートのみ再計算させない方法は?
Excel(エクセル)
-
-
4
開いてないブックへの参照の変更方法
Excel(エクセル)
-
5
リンク先のファイルを開かなくても、値が読み込めるようにできますか?(SUMIFSを使ってます)
Excel(エクセル)
-
6
エクセル関数>参照ファイル名をセルから呼び出す
Excel(エクセル)
-
7
IF関数で空欄(")の時、Nullにしたい
その他(Microsoft Office)
-
8
SUMIFに変わる(代用)数式を教えてください
Windows 7
-
9
ExcelでのINDIRECT関数の使い方について
Excel(エクセル)
-
10
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
11
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
12
Excelで重複データの件数ではなく、何番目かを求める方法
Excel(エクセル)
-
13
エクセルで開いていないbookのセルの値が欲しい
Excel(エクセル)
-
14
Excel 例A(1+9) のように番地のたし足し算の方法を教えてください
その他(Microsoft Office)
-
15
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
16
Excelでセル参照したとき、書式も一緒に持ってくるには?
Windows Vista・XP
-
17
Excelで隠れてしまった図やテキストボックスを探す方法
Excel(エクセル)
-
18
エクセルファイルをオープンしたときの再計算について
Excel(エクセル)
-
19
【Excel】 SUMPRODUCT関数の高速化
Excel(エクセル)
-
20
多量のSUMIF式を軽くしたい
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
他のシートの検索
-
INDIRECT関数の代替方法は?
-
BULK INSERT時のNull許容について
-
Accessで複数(3以上)...
-
【Transact-sql】 where条件、i...
-
Accessの「IIF」に相当するSQL...
-
ストアドファンクションで
-
一部のカラムでdistinctし全て...
-
UNIONする際、片方テーブルしか...
-
SELECT文で、指定カラム以外の...
-
DBの定義のサイズを大きくし過...
-
テーブルの列数を調べたい
-
AUTO_INCREMENTに0はダメ?
-
type date にnullをinsert
-
[MySQL]LOAD DATA INFILE一部レ...
-
SQLでカラムを追加し、条件に合...
-
mysqlで50音順にorder byしたい。
-
同じデータをinsertしないよう...
-
LIKEの右側にカラムを指定でき...
-
LOAD DATA INFILE での関数の扱い
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
INDIRECT関数の代替方法は?
-
【Transact-sql】 where条件、i...
-
BULK INSERT時のNull許容について
-
Accessの「IIF」に相当するSQL...
-
自分自身のテーブルを参照して更新
-
WHERE句で結合。INNER JOINとの...
-
Accessで複数(3以上)...
-
sqlite3でrowid以外にid必要で...
-
CSV fileを指定してSQLへimport
-
WHERE句の速度について
-
create tableのフィールド名
-
SQLiteで「UPDATE table1 SET c...
-
SQLの書き方
-
Oracleの制約について
-
SQL分のコツ
-
数百行の複数列を1列にしたい。
-
列を行に表示する方法は?
-
SELECT文で、指定カラム以外の...
-
DBの定義のサイズを大きくし過...
-
一部のカラムでdistinctし全て...
おすすめ情報