Spis treści
Ten artykuł ilustruje, jak oznaczyć czas w Excelu, gdy komórka się zmienia. Może być konieczne śledzenie wpisów danych w komórkach określonej kolumny. Na przykład zarezerwowałeś kolumnę B do wprowadzania danych. Teraz chcesz znacznik czasu w sąsiedniej komórce w kolumnie C, gdy komórka jest aktualizowana w kolumnie B. Ten artykuł pomoże ci to zrobić na 2 skuteczne sposoby.
Pobierz Zeszyt ćwiczeń
Zeszyt ćwiczeń można pobrać z poniższego przycisku do pobrania.
Timestamp w Excelu.xlsm2 Sposoby na wstawienie znacznika czasu w Excelu po zmianie komórki
1) Użyj funkcji JEŻELI, ORAZ, TERAZ i innych funkcji, aby wstawić znacznik czasu w Excelu
Wykonaj poniższe kroki, aby uzyskać znacznik czasu za pomocą formuł, gdy komórka się zmieni.
📌 Kroki
- Pierwsza prasa ALT+F+T otworzyć Opcje programu Excel . Then go to the Formuły Następnie należy sprawdzić Włączenie obliczeń iteracyjnych Następnie należy ustawić Maksymalna liczba iteracji do 1. Następnie kliknij przycisk OK.
- Teraz wprowadź w komórce następującą formułę C5 Następnie przeciągnij Uchwyt do napełniania ikonę, aby skopiować formułę do komórek poniżej.
=IF(AND(B5"",D5B5),NOW(),IF(B5="","",C5))
- Następnie wprowadź w komórce następującą formułę D5 Następnie przeciągnij Uchwyt do napełniania ikonę do komórek poniżej, jak wcześniej.
=IF(B5="","",IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5))
- Teraz zacznij wpisywać wartości do komórek w kolumna B . Po tym, otrzymasz następujący wynik. Tutaj, kolumna D jest kolumną pomocniczą, można ją ukryć klikając prawym przyciskiem myszy po wybraniu kolumny.
- Alternatywnie możesz po prostu wpisać do komórki następującą formułę C5 aby uzyskać ten sam rezultat.
=IF(B5"",IF(C5="",NOW(),C5),"")
- Może być konieczna zmiana formatowania komórek w kolumna C Wybierz kolumnę, klikając jej numer u góry, a następnie naciśnij przycisk CTRL+1 aby otworzyć Formatuj komórki Kliknij teraz w oknie dialogowym Niestandardowe Następnie należy wpisać d-mmm-rrrr hh:mm:ss AM/PM w Typ Na koniec kliknij przycisk OK.
Podział formuły:
Formuła w komórce C5:
➤ IF(B5="","",C5))
Na stronie Funkcja IF nie zwraca nic, jeśli komórka B5 w przeciwnym razie zwraca tę samą wartość, która jest przechowywana w C5 .
➤ TERAZ()
Na stronie TERAZ funkcja zwraca bieżącą datę i czas.
➤ I(B5"",D5B5)
Na stronie Funkcja AND zwraca TRUE jeśli oba argumenty są prawdziwe, tzn. komórka B5 nie jest pusty oraz komórki B5 oraz D5 nie mają tej samej wartości.
➤ IF(AND(B5"",D5B5),NOW(),IF(B5="","",C5))
Jeśli Funkcja AND zwraca TRUE , to. Funkcja IF zwraca bieżącą datę i czas uzyskane z TERAZ funkcja W przeciwnym razie zwraca wynik uzyskany z argumentu zawierającego Funkcja IF .
Formuła w komórce D5:
➤ ISNUMBER(D5)
Na stronie Funkcja ISNUMBER zwraca TRUE jeśli komórka D5 zawiera liczbę, w przeciwnym razie zwraca Fałszywy .
➤ AND(ISNUMBER(D5),B5=D5)
Na stronie Funkcja AND zwraca TRUE jeśli komórka D5 zawiera liczbę i komórki B5 oraz D5 mają tę samą wartość. Zwraca FALSE inaczej.
➤ OR(C5="",AND(ISNUMBER(D5),B5=D5))
Na stronie Funkcja OR zwraca TRUE jeśli któryś z argumentów jest prawdziwy, tzn. komórka C5 jest pusty lub Funkcja AND zwraca TRUE . It returns FALSE jeśli wszystkie argumenty są fałszywe.
➤ IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5)
Na stronie Funkcja IF zwraca tę samą wartość zapisaną w komórce D5 jeśli Funkcja OR zwraca TRUE W przeciwnym razie zwraca wartość komórki B5 .
➤ IF(B5="","",IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5)))
Na stronie Funkcja IF nie zwraca nic, jeśli komórka B5 jest pusta. W przeciwnym razie zwraca wynik uzyskany z argumentu zawierającego Funkcja IF .
Read More: Jak wstawić znacznik czasu w Excelu, gdy komórka się zmienia bez VBA (3 sposoby)
Podobne lektury
- Jak wstawić statyczną datę w programie Excel (4 proste metody)
- Excel VBA: Wstaw znacznik czasu po uruchomieniu makra
- Jak wstawić stempel daty w Excelu, gdy komórki w wierszu są modyfikowane
- Konwersja uniksowego znacznika czasu na datę w Excelu (3 metody)
2. zastosować kod VBA do wstawienia znacznika czasu w Excelu, gdy komórka się zmienia
Możesz również uzyskać znacznik czasu w Excelu, gdy komórka zmienia się za pomocą VBA. Wykonaj poniższe kroki, aby móc to zrobić.
📌 Kroki
- Najpierw kliknij prawym przyciskiem myszy na zakładce arkusza docelowego, a następnie wybierz Wyświetl kod Otworzy to moduł kodu dla tego konkretnego arkusza.
- Następnie skopiuj poniższy kod za pomocą przycisku kopiuj w prawym górnym rogu.
Private Sub Worksheet_Change(ByVal Target As Range) Dim CellCol, TimeCol, Row, Col As Integer Dim DpRng, Rng As Range CellCol = 2 TimeCol = 3 Row = Target.Row Col = Target.Column If Row <= 4 Then Exit Sub Timestamp = Format(Now, "DD-MM-YYY HH:MM:SS AM/PM") If Target.Text "" Then If Col = CellCol Then Cells(Row, TimeCol) = Timestamp Else On Error Resume Next Set DpRng = Target.Dependents ForEach Rng In DpRng If Rng.Column = CellCol Then Cells(Rng.Row, TimeCol) = Timestamp End If Next End If End Sub
- Następnie wklej skopiowany kod na pustym module, jak pokazano poniżej.
- Następnie należy zapisać dokument jako skoroszyt z obsługą makr Teraz zacznij wprowadzać dane do komórek w kolumnie B. Otrzymasz wtedy takie same wyniki jak wcześniej.
VBA Code Explanation:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim CellCol, TimeCol, Row, Col As Integer
Dim DpRng, Rng jako zakres
Deklarowanie niezbędnych zmiennych.
CellCol = 2
Kolumna do wprowadzania danych.
TimeCol = 3
Kolumna Timestamp.
Wiersz = Target.Row
Col = Target.Column
Przechowywanie numerów wierszy i kolumn wybranej komórki.
If Row <= 4 Then Exit Sub
Wszelkie zmiany w obrębie 4 górnych rzędów nie będą tworzyć znacznika czasu.
Timestamp = Format(Now, "DD-MM-YYYY HH:MM:SS AM/PM")
Znacznik czasu będzie sformatowany w ten sposób, zmień go w razie potrzeby.
If Target.Text "" Then
If Col = CellCol Then
Cells(Row, TimeCol) = Timestamp
Utwórz znacznik czasu, jeśli wybrana komórka jest pusta.
On Error Resume Next
Ignoruje każdy błąd, jeśli się pojawi.
Set DpRng = Target.Dependents
For Each Rng In DpRng
If Rng.Column = CellCol Then
Cells(Rng.Row, TimeCol) = Timestamp
Utwórz znaczniki czasu dla zakresu komórek, jeśli nie są puste.
Read More: Jak automatycznie wstawiać wpisy danych timestamp w Excelu (5 metod)
Rzeczy do zapamiętania
- Musisz użyć niestandardowego formatu dla komórek w kolumnie B, aby uzyskać prawidłowo sformatowany znacznik czasu.
- Formuła zastępcza działa tylko wtedy, gdy dane są wprowadzane do pustych komórek.
- W tym przypadku wprowadzanie danych i kolumna znacznika czasu są twardo zakodowane w kodzie VBA. Musisz zmodyfikować kod w oparciu o swój zestaw danych.
Wniosek
Teraz już wiesz, jak oznaczyć czas w Excelu, kiedy komórka się zmienia. Czy masz jakieś inne pytania lub sugestie? Proszę użyj sekcji komentarzy poniżej. Możesz również odwiedzić naszą stronę ExcelWIKI Zostań z nami i ucz się dalej.