„Excel“ - pakeiskite datą automatiškai

Problema

Naudoju šią formulę savo darbo lape:

  •  = IF (ARBA (A1 = 1, A1 = 2, A1 = 3), šiandien (), "") 

Problema ta, kad kai kitą dieną atidarysiu savo lapą, visos atvykimo datos pasikeis į šiandien, man reikia praėjusios dienos, kad likčiau toks pats ir tik naujas įrašas, rodantis šiandienos datą, prašome bet kokio kūno pagalbos!

 Būsenos dienų vėliava Darbo aprašymas Data 1 2010 m. Gegužės 16 d. 2 2010 m. Gegužės 17 d. 1 2010 m. Gegužės 20 d 

Sprendimas

Jei reikšmė A1 bus įvesta rankiniu būdu, galite naudoti įvykius

Padaryti tai

  • 1. Paspauskite ALT + F11, kad paleistumėte VBE
  • 2. Paspauskite CTRL + R, kad parodytumėte projekto tyrėją
  • 3. Dukart spustelėkite lapą, kuriame bus pakeista A1 vertė
  • 4. Įklijuokite šį kodą

 „Private Sub Worksheet_Change“ („ByVal Target As Range“), jei įvykis nebuvo pradėtas naudojant pirmąjį stulpelį (A stulpelis), tada nieko nereikia daryti Jei (Target.Column 1) Išeiti iš „Sub“, jei įvykis nebuvo suaktyvintas 1 eilutėje If (Target. 1 eilutė) Tada išeiti iš „Sub“ išjungti įvykius, kad mes nepatektume į įvykių ciklą Application.EnableEvents = False Jei Tikslas = 1 Arba Tikslinė = 2 Arba Tikslinė = 3 Tada „1 eilutė žemyn ir viena stulpelis į dešinę Target.Offset (1, 1) = CDate (dabar) ta pati eilutė ir vienas stulpelis dešinėje Target.Offset (0, 1) = "" Kiti 1 eilutė žemyn ir vienas stulpelis dešinėje Target.Offset (1, 1) = "" " ta pati eilutė ir vienas stulpelis į dešinę Target.Offset (0, 1) = CDate (Dabar) Pabaiga Jei „mes dabar darome, galime vėl įgalinti evetns taikymą. Application.EnableEvents = True End Sub 

Prisimink tai

Ačiū rizvisa1 už šį patarimą forume.

Ankstesnis Straipsnis Kitas Straipsnis

Geriausi Patarimai