Avatar billede compater Nybegynder
26. juli 2005 - 20:43 Der er 22 kommentarer og
1 løsning

Markering af en celle

Jeg har i kolonne A fra række 3 og ned , dagene, altså 1,2,3...31 og række 2 fra kolonne b og hen, månederne jan - Dec.

Jeg vil lave en kode som fx. markere den celle som passer til dagsdato. altså hvis det i dag er d. 26.juli så skal den markere celle H28. Hvordan klares den ??
Avatar billede brynil Nybegynder
26. juli 2005 - 21:03 #1
Kan du bruge denne:

Sub KalDag()
Dim dg, md As Integer

dg = Format(Now, "d")
md = Format(Now, "m")

Cells(dg + 2, md + 1).Select

End Sub
Avatar billede compater Nybegynder
26. juli 2005 - 21:11 #2
Det kunne jeg ihvertfald, tak for hjælpen... læg et svar !!
Avatar billede brynil Nybegynder
26. juli 2005 - 21:12 #3
Du kan placere koden i Workbook_Open og vælge det konkrete ark:

Private Sub Workbook_Open()
Dim dg, md As Integer

Sheets("Ark1").Select
dg = Format(Now, "d")
md = Format(Now, "m")

Cells(dg + 2, md + 1).Select
End Sub
Avatar billede compater Nybegynder
26. juli 2005 - 21:15 #4
ved det lyder lidt skørt, men hvis jeg nu kun havde månederne fra Maj - December
Hvordan ville koden så se ud ??
Avatar billede brynil Nybegynder
26. juli 2005 - 21:21 #5
Kunne være:

Private Sub Workbook_Open()
Dim dg, md As Integer

Sheets("Ark1").Select

If md > 4 Then
  dg = Format(Now, "d")
  md = Format(Now, "m")
  Cells(dg + 2, md + 1).Select
'Else
'  MsgBox ("Udenfor datoområde")
End If

End Sub

Du kan fjerne kommentartegnene eller lave din egen 'Else' hændelse hvis betingelserne ikke er opfyldt.
Avatar billede brynil Nybegynder
26. juli 2005 - 21:23 #6
Hov, du skal flytte dg= og md= linierne op over If md...
Avatar billede brynil Nybegynder
26. juli 2005 - 21:25 #7
Sån':

Private Sub Workbook_Open()
Dim dg, md As Integer

Sheets("Ark1").Select

dg = Format(Now, "d")
md = Format(Now, "m")

If md > 4 Then
  Cells(dg + 2, md + 1).Select
'Else
'  MsgBox ("Udenfor datoområde")
End If

End Sub
Avatar billede compater Nybegynder
26. juli 2005 - 21:27 #8
Umiddelbart virker det på samme måde som før ?!?, koden tager ikke højde for at månederne starte med maj og slutter med december !
Avatar billede compater Nybegynder
26. juli 2005 - 21:31 #9
Kan det have noget at gøre med at: md = Format(Now, "m") antager at der står 5,6,7..12 istedet for Maj,juni...Dec. ??
Avatar billede brynil Nybegynder
26. juli 2005 - 21:36 #10
Makroen kigger overhovedet ikke på hvad du har skrevet i arket. Den undersøger datoen, finder ud af at måneden er nummer 7 og vælger derfor kolonne 7+1 som anført i linien:

Cells(dg + 2, md + 1).Select

Den samme fremgangsmåde gør sig gældende for dagen.

Prøv evt. at skrive

md = 1

istedet og test. Det er nemmest hvis du bruger Sub KalDag, så du ikke skal åbne/lukke din workbook.
Avatar billede compater Nybegynder
26. juli 2005 - 21:41 #11
:-( Det virker ikke, kan jeg sende dig Excel arket via mail ??
Avatar billede brynil Nybegynder
26. juli 2005 - 21:44 #12
brynil@mail.dk
Avatar billede compater Nybegynder
26. juli 2005 - 21:47 #13
Så skulle den være sendt !
Avatar billede brynil Nybegynder
26. juli 2005 - 21:51 #14
Modtaget, og den fungerer fint hér. Når jeg ændrer lidt...

Sub KalDag()
Dim dg, md As Integer
  dg = Format(Now, "d")
  md = 1                  ' <<<
 
  If md > 4 Then
  Cells(dg + 2, md + 1).Select
Else
MsgBox ("Huuhh")
End If

End Sub

...kommer meddelelsesboksen!
Avatar billede brynil Nybegynder
26. juli 2005 - 21:54 #15
Vent lige lidt!!
Avatar billede compater Nybegynder
26. juli 2005 - 21:54 #16
Når du køre makroen, hvilken Celle markere den så ?
Avatar billede brynil Nybegynder
26. juli 2005 - 21:57 #17
Så ikke lige du havde ændret dit ark i forhold til dit indledende spm.

Ret linien til dette:

Cells(dg + 2, md - 3).Select
Avatar billede brynil Nybegynder
26. juli 2005 - 22:00 #18
Du kan ændre på dit ark som du vil. Det er ren hovedregning at få valgt den rigtige kolonne/dag når du tager udgangspunkt i min kommentar fra 21:36:21.
Avatar billede compater Nybegynder
26. juli 2005 - 22:01 #19
Fino, Så virker det Squ ' Men så siger jeg tak for hjælpen (8-)
Avatar billede brynil Nybegynder
26. juli 2005 - 22:03 #20
Alle tiders. Tak for points :))
Avatar billede compater Nybegynder
26. juli 2005 - 22:03 #21
Ja, det har du ret i, problemet er at jeg først for ca. 1 uge siden er startet med VBA i Excel, og jeg er ikke så logisk tænkende endnu :-)
Avatar billede brynil Nybegynder
26. juli 2005 - 22:06 #22
Jah, sån' tror jeg vi alle er startet. Det kommer!
Avatar billede brynil Nybegynder
26. juli 2005 - 22:10 #23
Iøvrigt er der en Excel kategori på eksperten. Det er nok mere naturligt at lægge dine spørgsmål dér og evt. søge i besvarede spørgsmål. Men VB og VBA komplementerer hinanden, så du kan sikkert også få svar på meget hér.
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
Kurser inden for grundlæggende programmering

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