• ベストアンサー

「自動」と言うのはどのタイミングで更新される?

計算方法の設定を「自動」にしているのですが シートを切り替えてもセル上のNOW()が更新されません。 F9を押すと更新されますが 「自動」と言うのはどのタイミングで更新されるのでしょうか?

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

  • ベストアンサー
回答No.4

再計算のタイミングについては、既出のご回答のとおり。補足のみのため、ベストアンサーは辞退します。 再計算というのは、いつでもかずでも実行されるものではないということは分かったけれども、次に質問者さんが持たれる疑問は恐らく、「では NOW 関数って何の役に立つの?」ということではないかと予想します。例えば、こんな例が考えられるでしょう。 ●マクロの例えば Application.OnTime メソッドなどにより、自動的かつ頻繁にどこかのセルの値などが更新されるので、シート上に既存の NOW が時計の役割を果たす。 ●セルの書式によって表示できる時間を、秒単位ではなく分単位まで、あるいは分単位ではなく時間単位までというふうに、粗く設定しているので、再計算の頻度がそれほど高くなくても、NOW が時計の役割を果たす。 ●例えば ="2014/2/9 23:00"-now() といった感じで、数式の一部として現在時刻が必要な場合に NOW を使う。 ●「名前」機能の「参照範囲」として Excel 4.0 マクロ関数を記述する場合に、それらの関数は基本的に再計算しないので、揮発性(volatile)の関数である NOW を混ぜることにより、F9 キーほかによる再計算に力ずくで反応させるようにする。  例えばセルのフォント名を返す関数として =get.cell(18,sheet1!$A$1) とだけ名前のダイアログに入力してある場合、A1 セルのフォントの変更後に再計算をしても関数の戻り値には変更が反映されない。  ところが =get.cell(18,sheet1!$A$1)&t(now()) のように追記しておくと、再計算時に反映される。 4.0 マクロ関数は古い機能なので、仕様が昔とは大きく異なっている最新の Excel では、うまく機能しない関数も含まれています。今後の Excel でいつまで存続するのかは、不明です。 揮発性関数は他にもあるので、代わりにそれらを使っても別に構わないのですが、NOW ならアルファベット 3 文字だけだから書くのがラク、といったくらいのことです。 よく、当日の日付を TODAY 関数で、時刻を NOW で表示させている Excel ファイルを保存用の文書として作成している人がいますが、その方法では、ファイルを開くたびに日時が変化してしまいますね。文書というのは記録のために作成することが多いから、そこに記載されている日時についても、ずっと変化しないほうがよいというケースのほうが多いのではないでしょうか。そう考えると、TODAY や NOW が活躍する機会というのは、実はそれほど多くないのではないかと思います。 日時をセルに記入する方法としては、関数を使わなくても、当日の日付や現在時刻であれば、ショートカットキーにより一瞬でできます。当日の日付は「Ctrl+;」、現在時刻は「Ctrl+:」です。また、「Ctrl+;→ (スペース)→Ctrl+:」とタイプすれば、日付と時刻を合算したシリアル値となります。

KUBSIZANCFU
質問者

お礼

ありがとうございました。

その他の回答 (3)

noname#191210
noname#191210
回答No.3

>「自動」と言うのはどのタイミングで更新されるのでしょうか そのbookのデータが変更されたとき (シートを切り替えただけでは、変更はされません。また、シート1を変更すると、シート2も変更されます。) 参考URL http://support.microsoft.com/kb/214395/ja

KUBSIZANCFU
質問者

お礼

ありがとうございました。

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

原則としては「セルを編集した」時です。何かを記入したり削除したり。 ブックを開いた瞬間にも再計算されます。 並べ替えやオートフィルタなどでも起こります。 単に表示シートや表示ブックを切り替えた、セルなどの書式を変更した、図形を操作したなど(基本的にセルの編集を伴わない)操作では再計算されません。

KUBSIZANCFU
質問者

お礼

ありがとうございました。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

>自動」と言うのはどのタイミングで更新されるのでしょうか? 計算するセルの値が変更された時と覚えると良いでしょう。 試しに、空白のセルで、Deleteキーでも押してみてください。 従って >シートを切り替えてもセル上のNOW()が更新されません。 シートを切り替えただけでは更新されません。 そのほかに ファイルを開いたとき 印刷を実行したときに更新されるようです。 これは、これで便利です。

KUBSIZANCFU
質問者

お礼

ありがとうございました。

関連するQ&A

  • EXCELの自動(再)計算について

    EXCELの自動計算について質問します。 EXCELの自動計算である特定のセルのみ自動計算をしないように設定することは出来るのでしょうか? 具体的には、ある共有しているファイルがありまして、そのトップ部分にファイルの更新時間を表示させております。 NOW()関数をそのセルに設定しているのですが、オプションでの自動計算が自動になっていると EXCELを開いた瞬間にこのファイル更新時間が再計算されてしまいますが、ここの更新時間表示の関数のみ オプションの自動計算の「手動(保存時に再計算)」にしたいのです。 この共有しているEXCELの他のセルには様々な関数が設けてあるのですが、それについては自動で再計算してもらわないと とても困るのです。(コンピュータを余り知らない方々も操作することもあるので、F9を押して再計算して下さいと混乱を招く 様な事はしたくないと言うこともあるので…) 何か良い方法がありますでしょうか?

  • EXCEL2003 自動更新と再計算について

    EXCEL2003 自動更新と再計算について シート間の計算を含んだエクセルのBookがあります。 リンク先のブックの数値を変えて保存し、 計算しているほうのブックを開くだけで 以前はすべての箇所が自動更新され再計算されていたのですが、 最近、オプションの自動更新のところにチェックがついているのに、 自動更新される箇所と自動更新されない箇所があり困っています。 自動更新されないところは一度確定すると再計算されますが、 どうして自動更新されるところとされないところがあるのでしょうか? (計算式はセルの位置が異なるだけで、再計算されるセルもされないセルも同様のものです。) ちなみに、保存しなおす、ブックを閉じる、パソコンの電源を付け直すなどしても同じ結果でした。

  • Excelで手動計算になっていないのに自動計算できない

    手動計算の設定になっていないのに自動計算出来なくて困ってます。 作業は↓のようなことをしています。 シートが左からsheet1、sheet2、sheet3、sheet4と有ります。 1.sheet1からsheet3までのA1セルの合計をsheet4のA1に出します。関数は=SUM(Sheet1:Sheet3!A1)になります。 2.その後、sheet2をsheet4の右側に移動します。  これでsheet4に入れてある関数自体は変わらないものの、中味の数値には変化があります。(sheet1とsheet3だけの合計になるから) 問題はこの後です。 3.移動したsheet2を元の位置に戻します。  通常でしたらこの時点で再計算され、sheet4にはsheet2の数値を含めたsheet1からsheet3までの合計が出るはずです。 がしかし、出ません。 ・手動計算の設定になっているのかと思い、確認しましたが、自動計算の設定になったままでした。 ・試しにF9キーを押してみましたが再計算されません。 ・実際はシートが大量にある為、計算速度が遅いのかと思い、5分程まってみましたが再計算されません。 ・上書き保存をして、PCも再起動して見ましたが、再計算されません。 結局どうしても再計算されないため、式が入っているセルをF2キーで再入力できる状態にしてからEnterキーを押して更新・再計算しています。(式を再入力している状態ですね) どうにか自動で再計算できないものでしょうか? それともこういう場合って再計算できないものなのでしょうか?

  • マクロで更新日表示。。。

    エクセルで今日の日付を自動で入れるときは、「=now()」もしくは「=today()」でできますが、開いたシートのデータを更新したときだけ、任意のセルに今日の日付(更新日)が自動で入るようにしたいと思います。(シートを開いてもそのシートを修正しなかったら日付は変わらないようにしたいです) マクロを作成しないとできないと思いますが、なにせマクロ初心者なものでよく分かりません。 シートのどこかのセルが修正されたら、日付を入れたいセルに「ctrl+;」で更新日が入るようなマクロを作ればよいと思うのですが、具体的にどうすれば、このようなマクロが作成できるのでしょうか????

  • 自動更新について

    こんばんは、 windowsの自動更新で、更新があるかどうか検索するタイミングってどんなときなのでしょうか? 自分で設定したりできるんでしょうか? 98のときのように、タスクの中には無いようですけど、、、 ご存知の方お願いします。

  • Excel 2007で、更新日をセルに自動入力する方法を教えて下さい。

    Excel 2007で、更新日をセルに自動入力する方法を教えて下さい。 ファイルを開いた日付ではなく、更新したときに、更新したシートのみ日付を自動で変更する方法はありますか?

  • エクセルで特定のセルのみを任意のタイミングで更新

    エクセルのRANDBETWEEN関数についての質問です。 再計算するたびに,新しい整数の乱数を返すと思いますが, 再計算のたびに,整数を返すのでなく自分のタイミング(マクロでフォームボタンを押したときなど)で実行されるようにしたいです RANDBETWEEN関数が設定されているセルだけを任意のタイミングで更新するのは,どのようにしたら良いでしょうか?

  • 日付の自動更新

    エクセルでお聞きしたいのですが、 請求書のフォーマットがあります。 セルのF2に締め日である日付が入力されています。(○○年○○月20日というふうに) 現在はF2は毎回入力する形です。 それを、 たとえば、4月12日にシートを開けば、F2は4月20日という表示に、4月30日にシートを開けば5月20日という風に自動で表示させる方法はありますか? 関数を使用するのでしょうか? 教えてください。

  • 自動更新でも反映されない数式

    WindowsXP Excel2003を使用しています。 Sheet1!A1=「1」、Sheet1!A2=「2」、Sheet1!A3=「3」と値があり Sheet1!A4=「=SUM(A1:A3)」と数式が設定されています。 また、Sheet2!B1=「=Sheet1!A4」が、Sheet3!C1=「=Sheet2!B1」と  数式が設定されています。 Sheet1!A4、Sheet2!B1、Sheet3!C1には「6」が表示されていました。 今回、Sheet1!A1に「11」と値を変えたところ、Sheet1!A4には「16」に  変わりましたが、Sheet2!B1、Sheet3!C1は「6」のままです。 計算方法は自動で、再計算を実行してもかわりません。 Sheet2!B1を選択し、F2→EnterとするとSheet2!B1が「16」となり、  Sheet3!C1は「16」になりました。 どうのようにしたらこの事象は直るのでしょうか? 教えてください。

  • 自動更新について

     パソコンの自動更新機能を有効にすることが出来ません。「コントロールパネル」→「システム」→「自動更新」で挑戦してみたのですが、どうしても、「自動更新を無効にする」の位置からチェックが動かせません。どのようにすれば自動更新を有効に設定することが出来るのでしょうか。  パソコンの知識はあまりありませんので、分かりやすい方法でお願いします。

専門家に質問してみよう