• ベストアンサー

Excelの日付について

過去の投稿を拝見しましたが、該当する物が見つけられませんでした。 どなたか、下記の件教えていただけませんか? Excelで、FAX用紙のフォーマットを作っています。 (なぜエクセルなのかは、聞かないで下さい・・・。 私もホントはExcelはおかしいだろ~と思っているので・・・。) 1枚1シートなので、今日1のシートを使ったら、明日は2個目のシートという感じになっています。 つまり、同じシートは二度と使わないという事です。 ここからが、質問なのですが・・・。 日付を自動的に入力するために"Today"を使いました。 が、他のシートも今日の日付になってしまいますよね。 例えば、1のシートを昨日使ったとします。 1のシートには、自動的に昨日(入力当日からすると今日)の日付が入っていて 2のシートには、今日の日付がちゃんと入るようにできませんか? なんだか分かりづらい質問で、大変恐縮なのですが おわかりの方がいらっしゃったら、教えてください。 宜しくお願いします。

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

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

FileMakerでも使えば簡単なのに、Excelでやらなくちゃいけないとは 御愁傷様です。 私の場合、次々とシートが増えていくこういうネタの時はシート名を 積極的に使います。今日使ったシート名が「03-06-17」だとすると、 =DATEVALUE(MID(CELL("filename",$A$1), FIND("]", CELL("filename",$A$1))+1, 30)) で使った日付の値が取得できます。 ちなみにそういう名前のシートを自動的に作るには、マクロで Sub copytemplatetoNewSheet() Sheets("template").Copy before:=Sheets(1) With ActiveSheet .Move after:=Worksheets(Worksheets.Count) .Name = Format(Now, "yy-mm-dd") End With End Sub のようにやります。これは「template」という名前のシートをコピー して名前を今日の日付にしてくれます。 シート名を使うやり方の便利なところは、後で探すのが楽ってことで すね。

その他の回答 (8)

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

Sub test01() ActiveSheet.Cells(1, "A") = Date End Sub をツールバーのボタンに登録すれば(注)、アクチブにしている シートのA1にボタンをクリックした日の日付けが入り 以後セットした日付けは動きません。 C2セルに日付けをセットするなら ActiveSheet.Cells(2, "C") = Dateとします。 (注)ツールーユーザー設定-「コマンド」タブ-マクロ-ユーザー設定ボタンをツールバーにドラッグ-右クリック-マクロの登録-マクロ名-test01-OK

  • dejiji-
  • ベストアンサー率38% (327/858)
回答No.7

マクロというと何故か難しそうでなかなか進みませんよね。マクロ初心者ということは使うということで。 通常のマクロの記録をするなら、 日付を入力するセルを選択、そこに「=NOW()」と入力後、そのセルをコピー、同じセルに形式を選択して貼り付けから、値を選択し、OK最後にEscでセル選択解除 ここまでをマクロで記録。後は、マクロを使うと日付スタンプが出来ます。NOWを使用しているので時間まで出ますが、そこはセルの書式設定でご自由に。

noname#11856
noname#11856
回答No.6

日付入力はやはり Ctrl+; が一番手っ取り早いと思います。 改ざんされないように保護すると言うのは 使ったシートを保護するって事ですよね? じゃないと入力できないし(^-^; で、印刷のほうですが ボタンはシート状に貼り付けますか? それともツールバー? もしくはCtrlキーと任意のキーを組み合わせてプリントするようにもできます。 ・・・と書いて気付きましたが、単純に印刷するだけなら ツールバーに印刷ボタンがありますが。。。(^-^; あと、Ctrl+P で印刷ダイアログを表示するので、何も変更しなくて良ければEnterで。 もし、毎回なんらかの変更を加えなければいけないのであれば ボタンやツールバーからVBAを呼び出して印刷することも出来ます。 (ちなみに単に印刷設定だけなら最初のシートに設定しておいて シートコピーすれば印刷設定もコピーされます。)

  • KUJIYA
  • ベストアンサー率34% (53/152)
回答No.5

結論としましては、手動で入力するのがいいのではないかと思います。 強引にやるなら、ツール>オプション>計算方法から、 再計算を手動に設定してやれば、再計算しない限り、 todayを実行した日を記録し続けます。 間違って再計算してしまったら保存せずにやり直しになりますが。 あとで編集しないなら、PDFファイルに返還して保存してしまうと 固定されますが、シート単位で残すなら難しいですね。 と書いている間にNo4さんの回答を見てしまいました。 それが一番簡単ですね(^^;

  • telescope
  • ベストアンサー率54% (1069/1958)
回答No.4

Ctrl+; で当日の日付を入力できます。 Ctrl+: では、時刻を入力できます。 Ctrl+; のあとにスペースを入れて Ctrl+: で日付と時刻を組み合わせることも出来ます。 マクロのボタンを押すのと手間は変わらないと思いますので、お試しを。

  • Neko-chan
  • ベストアンサー率20% (15/72)
回答No.3

一つの案ですが   シートがあるか無いか(その日)を判断できれば   Today()から-1,-2...していけそうな・・・   =IF(ERROR.TYPE( IF(Sheet2!A1="","a","b")) = 5,"","") a,bはさておき、"5"ですが、これはエラータイプ   が #NAME? であるということです。   これによって、シートが存在するかどうかを判断できます。   あれば Today()-n でそのシートに日付が表示できる   と思います。。。

1420
質問者

補足

FAXを送る日は、まちまちなんです。 2日連続で送る日もあれば、全く送らないときもあります。 改ざんされないように、保護もかけようと考えているため 教えていただいたのでは、少し無理があるかもしれません・・・。 でも、ありがとうございます。 勉強になりました。

  • arukamun
  • ベストアンサー率35% (842/2394)
回答No.2

こんばんは 毎回違うシートでしたら、毎日手入力で日付を入れても良いと思います。 もし、違うシートだが、同じセルというのであれば、マクロでも良いですね。

1420
質問者

補足

違うシートですが、同じセルです。 どのような、マクロを組めば良いのでしょうか? (マクロ初心者です。) あと、追記で申し訳ないのですが ボタンを押せば、印刷できるようにしたいのですが どうしたらよいでしょうか? 教えていただけませんか?? すみません。

  • taknt
  • ベストアンサー率19% (1556/7783)
回答No.1

マクロを使うしかないですね。 ボタンを押されたら、今日の日付をセットするようにするとか。

1420
質問者

補足

違うシートですが、同じセルです。 どのような、マクロを組めば良いのでしょうか? (マクロ初心者です。) あと、追記で申し訳ないのですが ボタンを押せば、印刷できるようにしたいのですが どうしたらよいでしょうか? 教えていただけませんか?? すみません。

関連するQ&A

専門家に質問してみよう