Avatar billede folj Forsker
14. maj 2019 - 10:40 Der er 9 kommentarer og
1 løsning

ISDATE function Excel

Hej venner !

Jeg sidder og prøver at lave en formel der skal teste om cellen lige overover er en dato.
Hvis den er det, vil jeg skrive en standarttekst i cellen.
=IF(ISDATE(A646);"Sdt-tekst";"")


hvis ikke kommer ikke nogen tekst.

Jeg kan blot ikke finde det rigtige formelnavn.

Help me, please.
Avatar billede Mads32 Ekspert
14. maj 2019 - 11:07 #1
Hej

Her et forslag på dansk
Dato i celle C7

13-03-1947        "=HVIS(DAG(C7)>0;"tekst";"")
Avatar billede Dan Elgaard Ekspert
14. maj 2019 - 11:55 #2
Der er, så vidt jeg ved, ikke nogen =ISDATE() funktion i Excel.

Hvad du kan gøre, er at kontrollere, om værdien i cellen er mellem 2 datoer:

=IF(AND(A646>=DATE(1900;1;1);A646<=DATE(9999;12;31));"Er dato";"")

Ret selv datoerne til, hvis du ikke ønsker, at teste for hele Excel's dato spektrum.
Avatar billede xl-Enthusiast Ekspert
14. maj 2019 - 13:46 #3
Dans formel kunne måske udvides til:

=IF(AND(A646>=DATE(1900;1;1);A646<=DATE(9999;12;31);CELL("format";A646)="D1");"Er dato";"")

dansk:

=HVIS(OG(A646>=DATO(1900;1;1);A646<=DATO(9999;12;31);CELLE("format";A646)="D1");"Er dato";"")
Avatar billede Mads32 Ekspert
14. maj 2019 - 14:36 #4
Hej

Er mit forslag for simpelt, eller kan det give en fejl.

Hvis der er indtastes en dato i en celle, vil cellen altid have en værdi, og værdien er større end nul..
Avatar billede Dan Elgaard Ekspert
14. maj 2019 - 15:54 #5
Der er så ment ikke noget i vejen med dit forslag, Mads, men der er et par muligheder for fejl:

Hvis cellen indeholder værdien 0,000001, eller et andet lille tal, mindre end 1, indeholder cellen ikke en dato, men din formel vil vise det som en dato.

Hvis cellen indeholder værdien 2958466 eller højere, vil din formel vise en dato, men dette tal er større end 31-12-9999, der er Excel's maksimum dato grænse.

Og, en detalje, så er din formel ikke så fleksibel med hensyn til, eventuelt, at lave dato afgrænsning.
Avatar billede xl-Enthusiast Ekspert
14. maj 2019 - 16:07 #6
Mads

Den er vel i de fleste situationer nogenlunde god. Men prøv for eksempel i C7 at indtaste 29-02-2019 eller på anden måde en tekststreng. Hvis du i C7 har 14-05-2019 så returnerer den "tekst" som du har specificeret. Det samme gør den, hvis du i C7 indtaster tallet 43599 (= serienummeret for datoen den 14-05-2019). Altså din formel tester på om et tal er mellem 1 (01-01-1900) og 2958465 (31-12-9999) men ikke på om tallet er formateret som dato.

Formlen =CELLE("format";C7)="D1") tester om C7 er formateret:
dd-mm-åååå.

Der er flere andre datoformat-typer man kan teste på. Se Excels hjælp til CELLE-funktionen.
Avatar billede Mads32 Ekspert
14. maj 2019 - 17:53 #7
Hej

Tak for svar til Dan Elgaard og xl-entusiast.

Jeg kan se at man skal tænke bredt.
Avatar billede store-morten Ekspert
14. maj 2019 - 22:13 #8
ISDATE er en VBA function.

Du kan prøve at lave din egen function :-) IS_DATE f.eks.

Kode i et Modul:
Function IS_DATE(cel)

If ISDATE(cel) Then
        IS_DATE = True
    Else
        IS_DATE = False
    End If

End Function


=IF(IS_DATE(A646);"Sdt-tekst";"")
Avatar billede folj Forsker
21. maj 2019 - 08:40 #9
Mange gode forslag imens jeg havde valgt at holde nogle feriedage - så jeg undskylder den laaange svartid.

Der er mange gode forslag, men jeg synes at guldkornene kommer først til sidst fra store-morten (ihvertfald de guldkorn jeg synes om). igen lærte jeg noget nyt...
"ISDATE er en VBA function". så er det jo derfor den ikke vil kendes ved det funktionsnavn.

Men løsningen med en brugerdefineret funktion til at dække det der ikke findes i excel - det elsker jeg. Det er ikke så ofte man kan finde noget der ikke er en funktion til.

Takker alle for jeres engagement i mit problem. og undskyld igen for den lange svartid.

Og specielt tak til store-morten, for guldkornene.
Avatar billede store-morten Ekspert
21. maj 2019 - 09:21 #10
Velbekomme. :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

Cognizant Technology Solutions Denmark ApS

Senior Delivery Manager

Udviklings- og Forenklingsstyrelsen

Kontorchef til Erhvervs- og EU-løsninger

Politiets Efterretningstjeneste

Digital workplace- /klientspecialister til PET

WSP Danmark A/S

MicroStation konsulent

Netcompany A/S

Test Specialist