[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『一部セルの値を削除』(tubure)
時間集計の為の表を作成しています。
毎日、各自で時間を入力するのですが、C1に=TODAY()関数を入れて今日の日付を表示させています。
しかし、前日に入力した値が残っているため、誰が今日の分でというのが分かりません。
更に、入力忘れ防止も含めて下記のことがしたいのですが、関数およびマクロでできるのかご教示頂きたいのですが。
・C1に=TODAY()はそのまま ・次の日に最初に開いたときにC4:M13までの値をクリア(前日分の時間等) ・2回目以降に開いたときはクリアにはしないで値は残したまま
以上、よろしくお願いいたします。
< 使用 Excel:Excel2007、使用 OS:Windows7 >
マクロで、ThisWorkbookモジュールに
Private Sub Workbook_Open()
If Format(Date, "yyyy/m/d") <> Split(ThisWorkbook.BuiltinDocumentProperties("Last save time").Value, " ")(0) Then Sheets("Sheet1").Range("C4:M13").ClearContents End If
End Sub
こんなことでどうでしょうか。 シート名は適当に変更して下さい。 (天邪鬼) 2014/10/23(木) 12:06
天邪鬼さん
コード添付ありがとうございます。
しかし、実行されませんでした。
>・2回目以降に開いたときはクリアにはしないで値は残したまま
というので、すでに開いていたからでしょうか???
無知で申しわけありません。 (tubure) 2014/10/23(木) 13:22
説明不足でした。
1回目、2回目というチェックはしていません。 このファイルはいつ保存されたものかを調べて、今日保存したものであれば、何もせず、 今日以外(通常は前日まで)に保存したものであれば指定の範囲のデータをクリアします。
したがって、いま作って保存して、再度開いても何も起こりません。 あした開くとデータがクリアされます。
テストするにはシステムの日付を変えてやって見て下さい。
(天邪鬼) 2014/10/23(木) 13:57
天邪鬼さん
説明ありがとうございます。
日付を変えて実行したところ、
Sheets("Sheet1").Range("C4:M13").ClearContents
で、結合された一部を変更することはできません。とデバックになりました。
シート名は確認したので("C4:M13")に問題があるのでしょうか??
(tubure) 2014/10/23(木) 14:50
問題がありそうです。
エラーメッセージから推察すると、 文字通り、C4:M13 の中に結合されたセルの一部があるのではないですか? ~~~~~ (天邪鬼) 2014/10/23(木) 15:23
天邪鬼さん
>文字通り、C4:M13 の中に結合されたセルの一部があるのではないですか?
問題ありました。
一度、結合部分を解除してやりなおしたところ、問題なく動きました。
ありがとうございます。 (tubure) 2014/10/23(木) 15:56
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.