Avatar billede al_pacone Nybegynder
27. april 2004 - 22:50 Der er 11 kommentarer og
1 løsning

Find dato

En makro der kan finde en dato i kolonne A, ud fra indtastninger i celle B1 og B2 ?.

Måned i celle B1
År i celle B2
Avatar billede jkrons Professor
27. april 2004 - 22:54 #1
Jeg er ikke helt med. I B1 står fx Januar eller 1. I B2 står 2004. Hvordan skal den finde datoen ud fra det? Er der kun en dato i hver måned i kolonne A eller er der flere? Hvis der er flere, hvilken skal den så finde?  Hvad skal den gøre ved datoen, når den finder den?
Avatar billede al_pacone Nybegynder
27. april 2004 - 23:02 #2
I B1 er måneder angivet med tal, eks. 1 for januar, og 12 for december.
I B2 er år angivet med tal, eks. 2004.
I kolonne A er der en kalender, kun med en dato i hver celle (dd-mm-yyyy).
Når datoen er fundet, skal cellen markeres.
Avatar billede jkrons Professor
27. april 2004 - 23:04 #3
Men ud fra kun måned og år er det jo ikke muligt at finde en dato. Dagen må også med. Der er fx 31 datoer i januar 2004, så hvilken af dagene i den måned er det, at du ønsker at finde?
Avatar billede al_pacone Nybegynder
27. april 2004 - 23:06 #4
Kan alle datoer med de angivne måned og år markeres.
Undskyld forviringen.
Avatar billede kabbak Professor
27. april 2004 - 23:22 #5
et bud

Public Sub FindDato()
Dim Nr1 As Boolean, Fad As String, Lad As String
Nr1 = False
r = Range("A65536").End(xlUp).Row
md = Range("B1")
aar = Range("B2")
For Each C In Range("A1:A" & r)
If Month(C) = md And Year(C) = aar Then
If Nr1 = False Then
Fad = C.Address
Nr1 = True
Else
Lad = C.Address
End If
End If
Next
Range(Fad & ":" & Lad).Select
End Sub
Avatar billede jkrons Professor
27. april 2004 - 23:25 #6
kabbak-> Din løsning virker kun hvis datoerne står i rækkefølge, ikek vhsi de står spredt i kolonnen. Men der måske godt nok her. Jeg har selv prøvet at gemme adresserne i et array, og så markere indholdet af array'et men uden held :-(
Avatar billede kabbak Professor
27. april 2004 - 23:27 #7
jeg ved det, men håbede på at de var i rækkefølge.
Avatar billede kabbak Professor
27. april 2004 - 23:34 #8
jkrons, her en der tager spredte data.

Public Sub FindDato()
Dim Nr1 As Boolean, Fad As String
Nr1 = False
r = Range("A65536").End(xlUp).Row
md = Range("B1")
aar = Range("B2")
For Each C In Range("A1:A" & r)
If Month(C) = md And Year(C) = aar Then
If Nr1 = False Then
Fad = C.Address
Nr1 = True
Else
Fad = Fad & "," & C.Address
End If
End If
Next
Range(Fad).Select
End Sub
Avatar billede jkrons Professor
27. april 2004 - 23:35 #9
:-)
Avatar billede al_pacone Nybegynder
28. april 2004 - 20:55 #10
Virker fint.
Nu har jeg kun datoer i rækkefølge, så begge forslag virker.

Tak for hjælpen, begge to.
Avatar billede kabbak Professor
28. april 2004 - 21:55 #11
ok så et svar. ;-))
Avatar billede kabbak Professor
28. april 2004 - 22:36 #12
tak for pointz
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