Jak automaticky zaznamenat datum a čas při změně buňky?
Je pro nás snadné ručně vložit statické datum a čas nebo vložit dynamické datum měnící se systémovým časem pomocí vzorce. Pokud chcete automaticky zaznamenat datum a čas při změně nebo zadání hodnot, může být tento problém poněkud odlišný. V tomto článku však můžete tento úkol vyřešit pomocí následujících kroků.
Automatické zaznamenávání data a času při změně buňky pomocí kódu VBA
Automatické zaznamenávání data a času při změně buňky pomocí kódu VBA
Například mám řadu hodnot a teď, když změním nebo zadám nové hodnoty ve sloupci B, chci tam automaticky zaznamenat aktuální datum a čas ve sloupci C, jak ukazuje následující snímek obrazovky:
Tuto úlohu můžete dokončit pomocí následujícího kódu VBA. Udělejte prosím toto:
1. Podržte ALT + F11 klávesy pro otevření Okno Microsoft Visual Basic pro aplikace.
2. Poté vyberte použitý list zleva Průzkumník projektupoklepáním otevřete soubor Modula poté zkopírujte a vložte následující kód VBA do prázdného modulu:
Kód VBA: Při změně buňky se automaticky zaznamenává datum a čas
Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140722
Dim WorkRng As Range
Dim Rng As Range
Dim xOffsetColumn As Integer
Set WorkRng = Intersect(Application.ActiveSheet.Range("B:B"), Target)
xOffsetColumn = 1
If Not WorkRng Is Nothing Then
Application.EnableEvents = False
For Each Rng In WorkRng
If Not VBA.IsEmpty(Rng.Value) Then
Rng.Offset(0, xOffsetColumn).Value = Now
Rng.Offset(0, xOffsetColumn).NumberFormat = "dd-mm-yyyy, hh:mm:ss"
Else
Rng.Offset(0, xOffsetColumn).ClearContents
End If
Next
Application.EnableEvents = True
End If
End Sub
3. Poté tento kód uložte a zavřete, abyste se vrátili do listu, nyní, když změníte hodnotu buňky nebo zadáte nová data do sloupce B, datum a čas se automaticky zaznamená do sloupce C.
Poznámky:
1. Ve výše uvedeném kódu můžete upravit „B: B„Do kteréhokoli jiného sloupce, u kterého chcete změnit hodnoty buněk v tomto skriptu: Nastavit WorkRng = Intersect (Application.ActiveSheet.Range ("B: B"), Target).
2. S tím xOffsetColumn = 1 skript, můžete vložit a aktualizovat datum a čas do prvního sloupce vedle sloupce se změnou hodnoty, můžete změnit číslo 1 na jiná čísla, například 2,3,4,5… to znamená, že do data bude vloženo druhý, třetí, čtvrtý nebo pátý sloupec kromě sloupce změněných hodnot.
3. Když odstraníte hodnotu ve změněném sloupci, bude odstraněno také datum a čas.
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své excelentní dovednosti pomocí Kutools for Excela zažijte efektivitu jako nikdy předtím. Kutools for Excel Nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
Office Tab Přináší rozhraní s kartami do Office a usnadňuje vám práci
- Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
- Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
- Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!













