Jeg har et problem! Jeg har lavet en makro der skal åbne en tekstfil, kopiere nogle celler (bl.a. indeholdende nogle datoer) og derefter sætte det kopierede ind i et andet ark. Problemet er at halvdelen af datoerne går fra et være dd-mm-åååå tt:mm til at være mm-dd-åååå tt:mm:ss.
Jeg har forsøgt at løse problemet ved at ændre på formateringen af cellerne, jeg har prøvet alt, standard, tekst osv. Det virker ikke.
Det underlige er, at hvis jeg bare manuelt åbner tekstfilen kopiere data og sætter dem ind, er der ingen problemer. Fejlen sker når jeg "optager" denne handling til en makro, og så afspiller makroen!
Indstillingerne på computeren står til dansk, og datoindstillinger er angivet som den normale danske måde - altså dd-mm-åååå.
Håber der er nogen der kan hjælpe inden jeg springer i luften !!!!! (o:
Kender godt problemet og håbede på, at der var nogle der kunne give et godt svar - jeg tror i stedet jeg vil forsøge mig. Hvis der er lettere metoder må I endelig sige til.
Problemet er at Excel arbejder med et grund datoformat "mm/dd/åååå" og det eneste sikre er at konvertere den danske dato til det format og efterfølgende formatere cellen passende...
Kan ikke helt få det til at virke. Jeg har en celle (c4) som indeholder følgende: 02-07-2003 21:25:00 - hvis jeg forstår dit svar rigtigt, så skal jeg så lave en formel der hedder: =midt(c4;4;2) & "/" højre(c4;2) & "/" & venstre(c4;4) - men en sådan formel vil excel ikke godtage! Jeg skal nok have det skåret lidt mere ud i pap! (o:
Fint nok - det er noget du skal skrive inde i den makro, der importerer dine data. Prøv at indsætte din makro her - eller sende den til mig - så skal jeg fortælle hvor du skal skrive det. Du kan sende til thor@kursusmaterialer.dk
Okay - her er hele makroen (det er i det første det går galt - altså når den åbner filen grp-id.txt og så kopierer data og sætter det ind i det ark der hedder grp! datoerne er i kollonne c, og bliver sat ind i kollone c (i grp arket)
Håber du kan gennemskue det.
Sub hent_data2() ' ' hent_data2 Makro ' Makro indspillet 07-07-2003 af jesper_j '
Jeg kan godt se hvor der skal rettes, men der skal skrives lidt om på makroen for at få det til virke. Jeg har desværre ikke tid til at gøre mere ved det lige nu (har en af de der opgaver der giver rigtige penge :-) ). Jeg skal nok vende tilbage senere.
Det kan også være, at der er nogle af de andre, der har en god idé...
OK - her kommer det så (tror jeg nok)... Lad os antage, at datoen står i kolonne 3 (altså C kolonnen) så skal du ændre Array(3,1) i makroen til Array(3,4) - det lyder lidt magisk, men er ikke så indviklet endda - hvis du vil have en nærmere forklaring på, hvorfor kan du læse det her: http://www.kursusmaterialer.dk/Excel%20VBA/Excel%20VBA%20-%20kode/V%e6rkt%f8jskasse.aspx
Det ser meget mærkeligt ud - hvis man importerer din tekstfil "manuelt" gør den det helt korrekt, men gør man det med en makro går det galt. Der er forskellige rapporteringer af den slags problemer på nettet, men ikke nogle forklarer, hvad man så skal gøre. Prøv at skifte Array(3,4) til Array(3,2). Så få du datoen ind i arket som en tekst i stedet. Du kan så bruge Datoværdi funktionen til at konvertere til en dato du kan regne videre på.
JUHUUUUUU - Det virker nu! Mange mange tak for hjælpen. Og ja, jeg vil give dig ret i at det er meget underligt at det fungerer når man går det manuelt, men ikke når man gør det via en makro - men ændringen fra Array(3,4) til Array(3,2) hjalp altså !!!!
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.