mboost-dp1
Excel macro scroll
- Forside
- ⟨
- Forum
- ⟨
- Programmering
Hej...
Jeg har et excel dokument med 2 ark.
I ark1 har jeg en knap som sender mig videre til ark2 ->
I kolonne a har jeg datofelter fra 01-01 til 31-12 - altså 365 celler.
Jeg mangler et macroscript som automatisk scroller ned til dags dato så snart jeg kommer ind i ark2. Gerne således at dags dato er den øverst synlige række.¨
Jeg har fundet et par scripts på nettet, men de kan kun hjælpe mig via dialogbokse hvor jeg skal skrive hvilken linie jeg vil dirigeres til.
Jeg håber i forstår, og at en af jer gide at hjælpe.
Jeg er ikke for skarp til det VB.
Mvh
Jonas
Jeg har et excel dokument med 2 ark.
I ark1 har jeg en knap som sender mig videre til ark2 ->
I kolonne a har jeg datofelter fra 01-01 til 31-12 - altså 365 celler.
Jeg mangler et macroscript som automatisk scroller ned til dags dato så snart jeg kommer ind i ark2. Gerne således at dags dato er den øverst synlige række.¨
Jeg har fundet et par scripts på nettet, men de kan kun hjælpe mig via dialogbokse hvor jeg skal skrive hvilken linie jeg vil dirigeres til.
Jeg håber i forstår, og at en af jer gide at hjælpe.
Jeg er ikke for skarp til det VB.
Mvh
Jonas
Der findes sikkert en simplere løsning.
Men vi tager dagen idag og ser hvad måned og dag det er i måneden.
Når vi ved, hvilken måned vi er i i dag, ved vi hvor mange dage der har passeret og vi kan regne ud hvornår i dags celle er. (uden hensyn til skudår)
Sæt lige arket de skal bruges på så det ikke blot er activesheet, samt tjek at rækkerne passer.
Hvis du skal scrolle lidt yderligere, så kan du bruge:
det kræver dog at arket er aktivt.
Men vi tager dagen idag og ser hvad måned og dag det er i måneden.
Når vi ved, hvilken måned vi er i i dag, ved vi hvor mange dage der har passeret og vi kan regne ud hvornår i dags celle er. (uden hensyn til skudår)
Sæt lige arket de skal bruges på så det ikke blot er activesheet, samt tjek at rækkerne passer.
Sub ScrollToToday()
Dim todayMonth, todayDate, daysPassed As Integer
todayMonth = Month(Now())
todayDate = Day(Now())
Select Case todayMonth
Case 1
daysPassed = 0
Range("B" & daysPassed + todayDate).Select
Case 2
daysPassed = 31
Range("B" & daysPassed + todayDate).Select
Case 3
daysPassed = 59
Range("B" & daysPassed + todayDate).Select
Case 4
daysPassed = 90
Range("B" & daysPassed + todayDate).Select
Case 5
daysPassed = 120
Range("B" & daysPassed + todayDate).Select
Case 6
daysPassed = 151
Range("B" & daysPassed + todayDate).Select
Case 7
daysPassed = 181
Range("B" & daysPassed + todayDate).Select
Case 8
daysPassed = 212
Range("B" & daysPassed + todayDate).Select
Case 9
daysPassed = 243
Range("B" & daysPassed + todayDate).Select
Case 10
daysPassed = 273
Range("B" & daysPassed + todayDate).Select
Case 11
daysPassed = 304
Range("B" & daysPassed + todayDate).Select
Case 12
daysPassed = 334
Range("B" & daysPassed + todayDate).Select
End Select
End Sub
Hvis du skal scrolle lidt yderligere, så kan du bruge:
ActiveWindow.SmallScroll Down:=<integer værdi her>
det kræver dog at arket er aktivt.
Gå til top
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.