Kaip įterpti laiko žymą "Excel", kai pasikeičia ląstelė (2 veiksmingi būdai)

  • Pasidalinti
Hugh West

Šiame straipsnyje parodyta, kaip "Excel" programoje nustatyti laiko žymą, kai pasikeičia ląstelė. Gali prireikti sekti duomenų įrašus tam tikro stulpelio ląstelėse. Pavyzdžiui, duomenims įvesti rezervavote stulpelį B. Dabar norite, kad gretimoje C stulpelio ląstelėje būtų nustatyta laiko žyma, kai atnaujinama B stulpelio ląstelė. Šis straipsnis padės tai padaryti 2 veiksmingais būdais.

Atsisiųsti praktikos sąsiuvinį

Praktikos sąsiuvinį galite atsisiųsti iš toliau esančio atsisiuntimo mygtuko.

Laiko žyma Excel.xlsm

2 būdai, kaip įterpti laiko žymą "Excel", kai pasikeičia ląstelė

1. Naudokite IF, AND, NOW ir kitas funkcijas, norėdami įterpti laiko žymą į "Excel

Atlikite toliau nurodytus veiksmus, norėdami gauti laiko žymą, kai pasikeičia ląstelė, naudodami formules.

📌 Žingsniai

  • Pirmoji spauda ALT+F+T atidaryti "Excel" parinktys Tada eikite į Formulės skirtuką. Tada patikrinkite Įgalinti iteracinį skaičiavimą tada nustatykite žymimąjį langelį Didžiausios iteracijos į 1. Po to spustelėkite OK.

  • Dabar ląstelėje įveskite šią formulę C5 . Tada vilkite Užpildymo rankena piktogramą, kad nukopijuotumėte formulę į toliau esančias ląsteles.
=IF(AND(B5"",D5B5),NOW(),IF(B5="","",C5))

  • Tada ląstelėje įveskite šią formulę D5 . Toliau vilkite Užpildymo rankena piktogramą į toliau esančias langelius, kaip ir anksčiau.
=IF(B5="","",IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5))

  • Dabar pradėkite įvesti reikšmes į langelius, esančius B stulpelis . Po to gausite tokį rezultatą. Čia, D stulpelis yra pagalbinis stulpelis. Jį galite paslėpti spustelėję dešinįjį pelės klavišą po stulpelio pasirinkimo.

  • Arba galite tiesiog ląstelėje įvesti šią formulę C5 gauti tą patį rezultatą.
=IF(B5"",IF(C5="",NOW(),C5),"")

  • Gali tekti pakeisti ląstelių formatavimą C stulpelis . Pasirinkite stulpelį spustelėdami viršuje esantį stulpelio numerį. Tada paspauskite CTRL+1 atidaryti Formuoti ląsteles dialogo langą. Dabar spustelėkite Pasirinktinis numerio formatą. Tada įveskite d-mmm-ryyyy hh:mm:ss AM/PM į Tipas lauką. Galiausiai spustelėkite OK.

Formulės suskirstymas:

C5 ląstelės formulė:

➤ IF(B5="","",C5))

Svetainė IF funkcija nieko negrąžina, jei ląstelė B5 yra tuščias. Priešingu atveju grąžinama ta pati reikšmė, įrašyta į C5 .

➤ NOW()

Svetainė DABAR funkcija grąžina esamą datą ir laiką.

➤ IR(B5"",D5B5)

Svetainė AND funkcija grąžina TRUE jei abu argumentai yra teisingi, t. y. ląstelė B5 nėra tuščias ir ląstelės B5 ir D5 neturi tos pačios vertės.

➤ IF(AND(B5"",D5B5),NOW(),IF(B5="","",C5))

Jei AND funkcija grąžina TRUE , tada IF funkcija grąžina dabartinę datą ir laiką, gautus iš DABAR funkcija Priešingu atveju grąžinamas rezultatas, gautas iš argumento, kuriame yra IF funkcija .

D5 ląstelės formulė:

➤ ISNUMBER(D5)

Svetainė ISNUMBER funkcija grąžina TRUE jei ląstelė D5 yra skaičius. Priešingu atveju grąžinamas Klaidingas .

➤ IR(ISNUMBER(D5),B5=D5)

Svetainė AND funkcija grąžina TRUE jei ląstelė D5 yra skaičius ir ląstelės B5 ir D5 turi tą pačią vertę. FALSE kitaip.

➤ OR(C5="",AND(ISNUMBER(D5),B5=D5))

Svetainė Arba funkcija grąžina TRUE jei bet kuris iš argumentų yra teisingas, t. y. ląstelė C5 yra tuščias arba AND funkcija grąžina TRUE . Jis grįžta FALSE jei visi argumentai yra false.

➤ IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5)

Svetainė IF funkcija grąžina tą pačią reikšmę, kuri buvo išsaugota ląstelėje D5 jei Arba funkcija grąžina TRUE Priešingu atveju grąžinama ląstelės B5 .

➤ IF(B5="","",IF(OR(C5="",AND(ISNUMBER(D5),B5=D5)),D5,B5))))

Svetainė IF funkcija nieko negrąžina, jei ląstelė B5 Priešingu atveju grąžinamas rezultatas, gautas iš argumento, kuriame yra IF funkcija .

Skaitykite daugiau: Kaip įterpti "Excel" laiko žymą, kai ląstelė keičiasi be VBA (3 būdai)

Panašūs skaitiniai

  • Kaip "Excel" programoje įterpti statinę datą (4 paprasti metodai)
  • "Excel VBA": įterpti laiko žymą, kai vykdoma makrokomanda
  • Kaip įterpti "Excel" datos antspaudą, kai eilutėje esančios ląstelės yra pakeistos
  • "Unix" laiko žymos konvertavimas į datą programoje "Excel" (3 metodai)

2. Taikykite VBA kodą, kad įterptumėte laiko žymą į "Excel", kai ląstelė pasikeičia

Taip pat galite gauti "Excel" laiko žymą, kai ląstelė pasikeičia, naudodami VBA. Norėdami tai padaryti, atlikite toliau nurodytus veiksmus.

📌 Žingsniai

  • Pirmiausia dešiniuoju pelės klavišu spustelėkite tikslinės darbalapio kortelės skirtuką. Tada pasirinkite Peržiūrėti kodą . Taip bus atidarytas konkretaus darbalapio kodo modulis.

  • Tada nukopijuokite šį kodą naudodami viršutiniame dešiniajame kampe esantį kopijavimo mygtuką.
 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-YYYY 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 If End If End Sub 
  • Po to nukopijuotą kodą įklijuokite į tuščią modulį, kaip parodyta toliau.

  • Tada išsaugokite dokumentą kaip darbaknygė su makrokomandomis . Dabar pradėkite įvedinėti duomenis į B stulpelio langelius. Tada gausite tokius pačius rezultatus kaip ir anksčiau.

VBA kodo paaiškinimas:

Privatus Sub Worksheet_Change(ByVal Target As Range)

Dim CellCol, TimeCol, Row, Col As Integer

Dim DpRng, Rng kaip diapazonas

Būtinų kintamųjų deklaravimas.

CellCol = 2

Duomenų įvedimo skiltis.

TimeCol = 3

Laiko žymos stulpelis.

Row = Target.Row

Col = Target.Column

Pasirinkto langelio eilučių ir stulpelių numerių išsaugojimas.

Jei eilutė <= 4 Tada Exit Sub

Bet kokie pakeitimai 4 viršutinėse eilutėse nesukurs laiko žymos.

Laiko žyma = Format(Now, "DD-MM-GYYYY HH:MM:SS AM/PM")

Laiko žyma bus suformatuota taip. Pakeiskite ją pagal poreikį.

Jei Target.Text "" Tada

Jei Col = CellCol tada

Cells(Row, TimeCol) = Laiko žyma

Sukurti laiko žymą, jei pasirinkta ląstelė yra tuščia.

Dėl klaidos tęsti toliau

Ignoruoja bet kokią klaidą, jei ji įvyksta.

Set DpRng = Target.Dependents

For Each Rng In DpRng

Jei Rng.Column = CellCol Tada

Cells(Rng.Row, TimeCol) = Timestamp

Sukurkite laiko žymas langelių intervalui, jei jis nėra tuščias.

Skaityti daugiau: Kaip automatiškai įterpti "Excel" laiko žymos duomenų įrašus (5 metodai)

Dalykai, kuriuos reikia prisiminti

  • Norėdami gauti tinkamai suformatuotą laiko žymą, B stulpelio ląstelėms turite naudoti pasirinktinį formatą.
  • Pakaitinė formulė veikia tik tada, kai duomenys įvedami į tuščius langelius.
  • Šiuo atveju duomenų įvedimas ir laiko žymos stulpelis yra užkoduoti VBA kode. Turite pakeisti kodą pagal savo duomenų rinkinį.

Išvada

Dabar jau žinote, kaip "Excel" programoje žymėti laiką, kai pasikeičia ląstelė. Ar turite papildomų klausimų ar pasiūlymų? Tam naudokite toliau pateiktą komentarų skyrių. Taip pat galite apsilankyti mūsų ExcelWIKI tinklaraštį, kad sužinotumėte daugiau apie "Excel". Būkite su mumis ir toliau mokykitės.

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.