Retur Slutt på månedsdato - Excel-tips

Innholdsfortegnelse

Tony skrev med et spørsmål som ser enkelt ut, men krever en ganske komplisert formel:

Jeg kjører excel 97, og jeg vil at noen av de datoformerte cellene i kolonne 'K' skal returnere en dato som er slutten av måneden når jeg skriver inn en hvilken som helst dag i den måneden i 'G'. Jeg har prøvd EMONTH fra en tidlig versjon av excel, men har ikke den til å fungere i denne versjonen.

Det er noen måter å løse mange problemer i Excel på. Jeg er sikker på at noen kommer på noe enklere, men for øyeblikket kommer denne formelen til å tenke på:

=DATE(YEAR(E1),1+MONTH(E1),1)-1

DATE () -funksjonen godtar vanligvis tre argumenter: Et år, en måned og en dag. Så, 13. desember 2001 kunne komme inn som =DATE(2001,12,13).

Datofunksjonen er også ganske tilgivende. Hvis du angir et ugyldig antall måneder, for eksempel 13, vil det gi riktig dato. =DATE(2001,13,1)vil være 1. januar 2002. Dette gjør det til en flott funksjon når du trenger å legge til eller trekke fra gjeldende dato.

For å løse dette problemet er det lettere å finne den første dagen i neste måned og deretter trekke en dag. Dette er lettere, fordi vi vet at dagdelen av den første neste måned alltid er 1. Mens du prøvde å finne den siste dagen i denne måneden, må du sjekke for skuddår osv. - det vil generelt være en rot.

Hvis du har en dato i E1, vil YEAR (E1) returnere årets del av datoen. Måned (E1) +1 vil returnere månedsdelen av datoen og videreføre den til neste måned. Det siste argumentet, 1 vil velge den første dagen i neste måned. Så, til slutt, trekker jeg en fra den datoen for å konvertere 1/1/2002 til 31/12/2001.

Oppdater

Takk til Steve H. for dette out-of-the-box svaret. Det er uvanlig å vurdere "0" i en måned, men det fungerer!

=DATE(YEAR(E1),1+MONTH(E1),0)

Interessante artikler...