Jak wstawić znacznik czasu w programie Excel, gdy komórka się zmienia (2 skuteczne sposoby)

  • Udostępnij To
Hugh West

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.xlsm

2 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.

Hugh West jest bardzo doświadczonym trenerem i analitykiem Excela z ponad 10-letnim doświadczeniem w branży. Posiada tytuł licencjata w dziedzinie rachunkowości i finansów oraz tytuł magistra administracji biznesowej. Hugh ma pasję do nauczania i opracował unikalne podejście do nauczania, które jest łatwe do naśladowania i zrozumienia. Jego specjalistyczna wiedza na temat programu Excel pomogła tysiącom studentów i profesjonalistów na całym świecie doskonalić swoje umiejętności i osiągać doskonałe wyniki w karierze. Za pośrednictwem swojego bloga Hugh dzieli się swoją wiedzą ze światem, oferując bezpłatne samouczki programu Excel i szkolenia online, aby pomóc osobom indywidualnym i firmom w pełni wykorzystać swój potencjał.