こんにちはsouです。Excelでちょっと困っています。「A1セルに文字を入力したときの時間をA2セルに表示する」+「A3セルに文字を入力したときの時間をA4セルに表示する」
+「A5セルに文字を入力したときの時間をA6セルに表示する」
ように複数それぞれ文字を入力した別々の時間を表示したいのですが実際やってみるとなかなか出来ませんでした。A2セルの書式をhh:mmなどにして、セルに=if(A1<>"",NOW(),"")と書きました。これで一応A1セル入力でA2セルに時間は挿入されますが、Excelの自動計算機能により、
一度閉じてまた開いた場合や他のセルで自動計算を行うような入力をした際などに時間が更新されてしまいます。時間が更新されてしまってはだめなんです。かといってツール→オプションから自動計算を手動にすると、その他の計算(例えばSUM関数など)の自動計算に影響がでて、使い勝手が違ってくるし。。。。
VBAで
Private Sub Worksheet_Change(ByVal Target As Excel.Range)Dim r As Range For Each r In Target If r.Column = 1 Then r.Offset(0, 1).Value = Format(Now, "hh:mm:ss") End If Next rEnd Sub
とネットで調べて書いてみましたが 一つのセルに文字入力したらすべてのセルに同じ時間が表示反映
されてしまいます。どうすればよろしいんでしょうか?お分かりになる方ご返答宜しく御願い致します。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
先のNo.2のコードで
Application.EnableEvents = False
︙
Application.EnableEvents = True
は無くても正しく動きますね。もちろんあっても問題ありません。
No.2
- 回答日時:
> 一つのセルに文字入力したらすべてのセルに同じ時間が表示反映
ということなので 先の kigoshi 様の回答に入力セルの制限をかければいいと思います。
例えば、A列に限るのであれば
Private Sub Worksheet_Change(ByVal Target As Range)
'
Application.EnableEvents = False
'
If Target.Column = 1 Then
Target.Offset(0, 1).Value = Format(Now, "hh:mm:ss")
End If
Application.EnableEvents = True
End Sub
とすればいいと思います。
Target.Column = 1 の値を変えれば他の列にも使えます。行を制限するのであれば Target.Row とすれば行でも使えます。
No.1
- 回答日時:
Target.Offset(0, 1).Value = Format(Now, "hh:mm:ss")のときセルの内容が変わるので、Worksheet_Changeを再度呼び出してしまうことが原因ですね。
Application.EnableEvents = False
で、イベントを抑制し、時刻を入力。
で直後にイベントを呼び出せるように
Application.EnableEvents = True
とすれば、よろしいかと。
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim r As Range
Application.EnableEvents = False
Target.Offset(0, 1).Value = Format(Now, "hh:mm:ss")
Application.EnableEvents = True
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
許せない心理テスト
私は「あなたの目の前にケーキがあります。ろうそくは何本刺さっていますか」と言われ「12本」と答えたら…
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
A1セルに入力したら、入力時間をA2セルに自動挿入
Excel(エクセル)
-
エクセルで入力時間を更新させずに表示させたい
Excel(エクセル)
-
エクセルで時刻を自動入力する方法
Excel(エクセル)
-
-
4
特定セルの内容を更新したら、その更新日を自動的に表示する方法について
Excel(エクセル)
-
5
☆Excelエクセルで入力した日の日付を表示したいです☆
Excel(エクセル)
-
6
EXCEL:特定の文字が入力された日付を表示する方法
Excel(エクセル)
-
7
マクロ無しで時間自動で記入をしていきたい
Excel(エクセル)
-
8
vba セルに入力した時間をマクロで受け取るには?
Excel(エクセル)
-
9
データが入力されている隣のセルに当日日付と時刻を入力するExcel VBAプログラム
Visual Basic(VBA)
-
10
Excelで、「特定のセル」に入力したら→「別のセル」に「○」を自動表示する方法
Excel(エクセル)
-
11
あるセルに特定の文字列を打つと、他のセルに決められた文字が自動入力するように
Excel(エクセル)
-
12
エクセルで、日付を入力すると、別のセルに文字を自動的に表示させるようにするには。
Excel(エクセル)
-
13
エクセルvba (ByVal Target As Range)について
Excel(エクセル)
-
14
エクセル マクロ等を利用した各列ごとのセル最終更新日の自動入力について
Excel(エクセル)
-
15
Excelの関数で時刻を固定する方法
Excel(エクセル)
-
16
エクセルで、あるセルに入力されたらこのセルを参照する…
Excel(エクセル)
-
17
EXCELのNOW()関数の値の固定する方法は?
Excel(エクセル)
-
18
【エクセル】行の最終更新日を、あるセルに自動で入力させる方法。
Excel(エクセル)
-
19
エクセル イベントマクロ Changeイベントを複数作りたい
Access(アクセス)
-
20
IF関数で、時間を条件にしたい場合の式について
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
A1セルに入力したら、入力時間...
-
Excelで同じセルに箇条書きをし...
-
空白でないセルの値を返す方法...
-
バーコードが読み取れない原因...
-
エクセルでの早出・残業管理表...
-
エクセルで作業時間から休憩を...
-
エクセルで、突然ますが青くな...
-
Excelでセルに入力されたカラー...
-
excel 関数にて文字を0として認...
-
【Excel】セル内の時間帯が特定...
-
マイナス同士の前年比
-
ふりがな表示
-
エクセルで時間の判定をしてい...
-
値を入力後、自動的にアクティ...
-
エクセルで1行に入力文字数制限...
-
yyyy/mm/ddからyyyy/mmへの変換
-
エクセルで、例えば「0402」な...
-
エクセルで、セルに入力カーソ...
-
エクセルで複数の条件で掛け算...
-
CSV出力で変換されてしまっ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
A1セルに入力したら、入力時間...
-
Excelで同じセルに箇条書きをし...
-
参照先セルに値が入っていない...
-
IF関数で0より大きい数値が入力...
-
エクセルで既に入力してある文...
-
空白でないセルの値を返す方法...
-
Excelでセルに入力されたカラー...
-
入力したところまでを自動的に...
-
Excel:文字と数字の組合せ、次...
-
値を入力後、自動的にアクティ...
-
【Excel】セル内の時間帯が特定...
-
yyyy/mm/ddからyyyy/mmへの変換
-
エクセル セルに文字を入力した...
-
エクセルの数式がかぶって、選...
-
excel 関数にて文字を0として認...
-
エクセルで10分ごとの時刻の...
-
エクセルで時間の判定をしてい...
-
エクセルで複数の条件で掛け算...
-
Excel で空欄にも単位 \\や円 ...
-
マイナス同士の前年比
おすすめ情報