Avatar billede jorgenjo Nybegynder
17. marts 2016 - 08:54 Der er 7 kommentarer og
1 løsning

Problemer med datoformat i Excel

Jeg har nogle genstridige datoer i et ark hvor dataene løbende importeres fra andre "steder".

Flere af de importerede datoer opfattes som tekst. (Hvis man trykker backspace foran datoen falder den på plads - der er ingen mellemrum foran eller ')

Jeg tjekker datoformatet på denne måde - kan det gøres i en makro?

Dato        Funktion    Formel
  05-07-2012    41095    =HVIS(ER.FEJL(DATOVÆRDI(B2));B2;DATOVÆRDI(B2))
  05-02-2013    41310    =HVIS(ER.FEJL(DATOVÆRDI(B3));B3;DATOVÆRDI(B3))
23-10-2012    41205    =HVIS(ER.FEJL(DATOVÆRDI(B4));B4;DATOVÆRDI(B4))
  01-01-2013    41275    =HVIS(ER.FEJL(DATOVÆRDI(B5));B5;DATOVÆRDI(B5))
  01-01-2013    41275    =HVIS(ER.FEJL(DATOVÆRDI(B6));B6;DATOVÆRDI(B6))
21-05-2012    41050    =HVIS(ER.FEJL(DATOVÆRDI(B7));B7;DATOVÆRDI(B7))
  29-06-2012    41089    =HVIS(ER.FEJL(DATOVÆRDI(B8));B8;DATOVÆRDI(B8))
09-03-2012    40977    =HVIS(ER.FEJL(DATOVÆRDI(B9));B9;DATOVÆRDI(B9))
Avatar billede xl-Enthusiast Ekspert
17. marts 2016 - 09:41 #1
Det kan nemt ordnes med en formel:

=UDSKIFT(A2;TEGN(160);"")*1
Avatar billede jorgenjo Nybegynder
17. marts 2016 - 11:26 #2
Jeg må erkende at det virker, men kan den omdannes til en makro, som retter datoen i et navngivet område. (Du har jo svaret på mit oprindelige spørgsmål - du bør have point for det)
Avatar billede xl-Enthusiast Ekspert
17. marts 2016 - 13:36 #3
Det kan det sikkert, altså omdannes. Spørg hellere en af VBA-specialisterne.

Jeg har ikke leveret en løsning du kan bruge, og jeg samler ikke på point, så glem det.
Avatar billede Sitestory Mester
18. marts 2016 - 17:02 #4
Hvis første dato står i celle A1, skulle følgende klare sagen:

Sub FjernBlanke()
Dim rDatoer As Range
Dim rCell As Range

Set rDatoer = Range("A1", Range("A1").End(xlDown))

For Each rCell In rDatoer
  rCell.Value = Trim(rCell.Value)
Next

End Sub
Avatar billede jorgenjo Nybegynder
20. marts 2016 - 09:25 #5
Tak for dit input, men problemet er, at der ikke er nogen mellemrum foran de datoer, som ikke vil makke ret. Datoerne retter sig, hvis man f.eks. dobbeltklikker og trykker enter.
Eller stiller sig lige før første tal og trykker backspace og enter.
Avatar billede jorgenjo Nybegynder
22. marts 2016 - 09:03 #6
Har nu prøvet denne - det virker, men går lidt langsomt

Sub F2Enter()
Dim rDatoer As Range
Dim rCell As Range
Set rDatoer = Range("A1", Range("A1").End(xlDown))
For Each rCell In rDatoer
Application.SendKeys "{F2}{ENTER}"
Next
End Sub
Avatar billede jorgenjo Nybegynder
26. marts 2016 - 14:59 #7
Lukker da der ikke er kommet en bedre løsning
Avatar billede finb Ekspert
27. marts 2016 - 13:34 #8
Du har mulighed for at belønne dem,
der gav dig forslag.
Mvh finb
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
Kategori
Excel-kurser for alle niveauer og behov – find det kursus, der passer til dig

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