Wir wünschen allen Forenteilnehmern ein frohes Fest und einen guten Rutsch ins neue Jahr. x

Automatisches Scollen vertical und horizontal nach Datum
#1
Guten Tag zusammen,

ich habe mich gerade frisch angemeldet, weil ich mit einem Problem nicht weiter komme und mir hier Hilfe erhoffe.
Meine Excelkenntnisse beschränken sich so ziemlich darauf, was man heutzutage in der Arbeitswelt braucht - gehen aber nur wenig darüber hinaus.

Folgendes Problem möchte ich gerne Schildern - wo mir google ect. wenig geholfen haben.

Ich habe eine Art Aktionsplan - Projektplan erstellt. Dieser besteht aus allgemeinen Informationen zu der Aktion und einem Gant Diagramm, welches sich über fixierung separat Scrollen lässt.

Das Gant Diagramm rechts beinhaltet alle Tage/Daten im Jahr 2023 und markiert die Zeiträume farbig, wo was los ist. Beim Öffnen des Sheets habe ich per VBA Befehl eingerichtet, dass horizontal automatisch zum heutigen Datum gescrollt wird. Das funktioniert soweit prima.

Code:
'Sucht in Spalte Q-JF das heutige Datum, rollt bis zu dieser Spalte und markiert das  Datum
   
   
    With [Q10:JF10].Find(Date)
           
         ActiveWindow.Scrollcolumn = .Column
        .Select
   
    End With


Jetzt möchte ich gerne in der Linken Tabellenhälfte, dass es genauso funktioniert. Problem dabei ist, dass die Daten von oben nach unten gehen jedoch nicht vollständig sind. Soll heissen - nicht an jedem tag im Jahr startet ein neues Projekt. Somit gibt mir die oben genannte Funktion natürlich einen Fehler zurück, wenn das entsprechend heutige Datum nicht in der Auflistung gefunden wird. Was ich aber möchte ist, das die Tabelle vertical bis zum letzten Projektstart vor dem heutigen Datum scrollt.

Warum das ganze? Die Daten werden immer mehr und man scrollt schon eine Weile bis man am derzeitigen angekommen ist. Diese Aufgabe würde ich gerne bei Öffnen des sheets automatisieren.


Die Daten befinden sich in Spalte M im Format TT:MM:JJ

Beispiel: heute ist der 05.04.2023

Zeilen Daten: 
Projekt A - 01.01.2023
Projekt B - 06.03.2023
Projekt C - 25.03.2023 <-- scroll automatisch hier hin (bzw markiere die Zelle)
Projekt D - 17.04.2023

Habt ihr eine Idee?

   


Vielen Dank vorab
Antworten Top
#2
Hi

Versuch es so.
Code:
ActiveWindow.ScrollRow = Application.Match(CDec(Date), [M11:M100], 1) + 10
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • emgee85
Antworten Top
#3
Oh wow.. das scheint wirklich zu funktionieren. Tausend Dank - das hilft schonmal sehr weiter

Noch eine Ergänzung dazu

jetzt wird bis zum vorherigen Datum gescrollt. Soweit so gut. Nun ist es in der Regel so - hatte ich im Eingangspost nicht erwähnt - dass es mehrere gleiche Daten gibt

also heute ist der 05.04.23

01.02.23
01.02.23
02.03.23
02.03.23
07.05.23
07.05.23
07.05.23

Mit dem Code scrollt er nun das letzte Datum an - also das fett markierte. Kann man das auch auf das vorherige beziehen, welche gleich ist. (Unterstrichen)
Antworten Top
#4
Code:
Dim Srow As Long, j As Long

Srow = Application.Match(CDec(Date), [M11:M100], 1) + 10
For j = Srow To 11 Step -1
  If Cells(j, 13) <> Cells(j - 1, 13) Then Exit For
  Srow = Srow - 1
Next j

ActiveWindow.ScrollRow = Srow
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • emgee85
Antworten Top
#5
Ein Traum, Ihr seid ja toll.

Hier bleib ich Smile

Vielen Dank dafür

kann geschlossen werden Smile
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste