Print side | Luk vindue

macro eller kode

Udskrevet fra: Dansk Regneark Forum
Kategori: Hjælp til regneark.
Forum navn: Makro og VBA
Forum beskrivelse: Hjælp til Makroer og VBA-programmering
Web-adresse: https://forum.excel-regneark.dk/forum_posts.asp?TID=489
Udskrevet den: 05.Dec.2024 kl. 03:11


Emne: macro eller kode
Besked fra: kbno
Emne: macro eller kode
Posteringsdato: 12.Okt.2011 kl. 12:53
Hej Med Jer
 
i forbindelse med et andet problem kan jeg nu se en løsning hvis jeg kan finde en kode eller andet som automatisk konverterer en kolonne til at være i datoformat og samtidig "aktiverer" de indtastet data som en dato.
 
Kan dette lade sig gøre ???
 
Link til anden tråd: /sumproduct-dato_topic485.html"/sumproduct-dato_topic485.html


-------------
Hygge - Kim
Excel 365 DK user



Svar:
Besked fra: Allan
Posteringsdato: 12.Okt.2011 kl. 13:39
Hej Kim,
 
Konvertering af en 'Tekstdato' til en rigtig dato kan ske med denne lille kodestump.
Du skal bare rette DatoKolonne og StartRaekke så det passer i dit ark.
 
Sub Tekst_Til_Dato()
DatoKolonne = "J"
StartRaekke = 4
Range(DatoKolonne & StartRaekke & ":" & DatoKolonne & ActiveSheet.UsedRange.Rows.Count).Select
On Error Resume Next
    For Each c In Selection.Cells
        If Len(c) > 1 Then
            c.FormulaLocal = c.FormulaLocal
            c.NumberFormat = "dd-mm-yyyy"
        End If
        Next c
End Sub
 
Virker det?
 
//Allan


Besked fra: kbno
Posteringsdato: 13.Okt.2011 kl. 09:04
Hvad skal aktiverer koden - jeg har højklikke på fanen og lagt koden ind (rettet ;) men der skal vel være noget som kører koden ???

Skal siges at jeg importerer koden ind i en ny fane i arket.

Kan man til skriuve en "onload" funktion eller lign ???
 


-------------
Hygge - Kim
Excel 365 DK user


Besked fra: kbno
Posteringsdato: 13.Okt.2011 kl. 09:26
Hvis jeg kører run macro opdaterer den alle cellerne rigtigt - men det bliver desværre stadig ikke overført som dato. Men går jeg ind manuelt og opdaterer en af cellerne med datoen opdateres på data fanen som den skal.

-------------
Hygge - Kim
Excel 365 DK user


Besked fra: Allan
Posteringsdato: 13.Okt.2011 kl. 20:12
Hej Kim,
 
I enden af din egen kode skal du skrive Call Tekst_Til_Dato
På denne måde fortæller du Excel at den skal køre min kode efter din egen.
Jeg kan se at du bruger kolonne I til datoer, derfor skal min kode rettes til: 
 
Sub Tekst_Til_Dato()
DatoKolonne = "I"
StartRaekke = 4
Range(DatoKolonne & StartRaekke & ":" & DatoKolonne & ActiveSheet.UsedRange.Rows.Count).Select
On Error Resume Next
For Each c In Selection.Cells
If Len(c) > 1 Then
c.FormulaLocal = c.FormulaLocal
c.NumberFormat = "dd-mm-yyyy"
End If
Next c
End Sub
 
//Allan


Besked fra: kbno
Posteringsdato: 20.Okt.2011 kl. 12:55

Hej Allan

10000000 tak for hjælpen (her og PM). Desværre ingen løsning med excel 2003 men ovenstående fungerede umiddelbart som det skulle i excel 2010. Så det bliver nok den nemmeste løsning at skifte til 10 versionen.

Hygge - Kim



-------------
Hygge - Kim
Excel 365 DK user


Besked fra: Allan
Posteringsdato: 20.Okt.2011 kl. 13:42
Velbekomme Kim,
Jeg tror 'fejlen' ligger i den kode som bruges til at importere csv'en, men jeg har ikke mulighed for at teste det, da jeg ikke har Excel 2003 mere.
 
//Allan



Print side | Luk vindue