Datumsbereich über List\Combobox ein und ausblenden

Juwee

Mitglied
Guten Morgen,
seit ein paar Tagen beschäftigt mich folgendes Szenario:
In einer Zeile, sagen wir die 3., habe ich ab Spalte D die Datumswerte für 365 Tage von 01.01. bis 31.012.
Wie ich eine List- oder Combobox mit Jan, Feb, Mrz, usw gefüllt bekomme ist mir soweit klar.
Hat jemand ein verständliches Beispiel wie ich durch die Auswahl eines einzelnen Monats (oder auch zusammenhängende, z.B. Jan und Feb, Jan, Feb und Mrz) alle anderen Spalten ausgeblendet bekomme?
Lieber Gruß und einen guten Start in den Tag, Juwee(Uwe)
 
Bezieht sich das auf die gleiche Excel-Tabelle wie dein anderer Thread?
btw: Du hast 365 Spalten (Pro Tag eine)???? Oder versteh ich das falsch?
 
Moin Zvoni,
ich hab sogar 366 Spalten (pro Tag eine) wg. Schaltjahr ;)
Ja, das bezieht sich auf das andere Projekt. Ich wollte nur nicht ein ganzes Fass aufmachen.
Ich hab nun etwas rumgetestet, kam aber zu dem Ergebnis, dass mein Vorhaben so nicht umzusetzen ist.
Außer Du oder jemand anderes hat noch eine andere Idee.
Im Originalprojekt habe ich aktuell 4 Commands, mit denen ich die Quartale 1 - 4 ein- und ausblenden kann.
Nun hat sich die Anforderung ergeben, dass dies auch für einzelne Monate so sein soll.
Da mir der Platz für 12 weitere Commands fehlt war meine Idee dies mit einer Listbox oder einem Drop-Down zu lösen, in dem neben den Quartalen auch die Monate aufgelistet sind.
Leider hat ein Drop-Down gegenüber einer Listbox (auch dafür fehlt der Platz) keine Multi-Auswahl, die aber notwendig wäre, da es immer mal vorkommen kann, dass mehr als ein Quartal oder z.B. zwei Monate gleichzeitig angezeigt werden sollen.
Grüße, Juwee (Uwe)
 
Hast du schon daran gedacht, anstatt Spalten für die tage, Zeilen zu benutzen?
dann wäre es einfacher per Excel eigene Autofilter zu arbeiten
 
Hast du schon daran gedacht, anstatt Spalten für die tage, Zeilen zu benutzen?
dann wäre es einfacher per Excel eigene Autofilter zu arbeiten
Moin Zvoni,
das bringt mir nichts das Ergebnis wofür das Originalprojekt gedacht ist.
Screenshot 2023-11-28 151005.png
Im Grunde geht es mir darum die 4 Quartals Button abzureißen und durch ein Drop Down in der Art wie in der Zip-Datei zu ersetzen. Es sollen nur die Spalten angezeigt werden, die ausgewählt wurden. In dem Zusammenhang ist mir aufgefallen, dass ich möglicherweise nächstes Jahr (Schaltjahr) auf den Bauch falle wenn nur jeweils die Spalten angeben sind. Besserwäre wahrscheinlich "Blende alle Spalten aus, die nicht dem ausgewählten Zeitrahmen entsprechen".
 

Anhänge

  • Mappe1.zip
    19 KB · Aufrufe: 4
OK, habs mir angeschaut.
Da du als "Spalten-Kopf" anscheinend ein echtes Datum hast, kannst du im Prinzip immer wenn die Combobox das Change/Click_Ereignis feuert, durch die Spalten rennen, prüfst, ob die Spalte in dem Zeit-Bereich (Quartal, Monat) liegt, und dann ggfs. "Column.Visible=True/False" machen.
Wobei ich jetzt aus dem Ärmel auch nicht weiss, ob die Eigenschaft "Visible" oder "IsHidden" oder wie auch immer heisst

Würde mir noch ein (konstantes) Array irgendwo hinlegen (muss halt initialisiert werden), welches die Combobox-Einträge in Monats-Werte umwandelt

In der Art
Code:
Public ArrZeitraum(0 To 16) As Long

'Irgendwo im Startup
ArrZeitraum(0)=0 'Entspricht ganzes Jahr
ArrZeitraum(1)=-1 'Entspricht Q1 - Negativ, um es nicht mit Januar zu verwechseln
ArrZeitraum(2)=-2 'Q2
.
.
ArrZeitraum(5)=1 'Entspricht Januar
.
.
ArrZeitraum(16)=12 'Entspricht Dezember
 
Zuletzt bearbeitet:
Hallo Zvoni,
erstmal Danke :)

Um Spalten ein- bzw auszublenden wird Hidden auf true oder false gesetzt.
Beispiel:
Visual Basic:
Columns("C:G").EntireColumn.Hidden = False

Meinst Du, du kannst mir in den nächsten Tagen in die Beispieldatei einen funktionalen Ansatz implementieren, die ich anpassen bzw erweitern kann?
Das wäre super.
Ganz lieben Dank schon mal im Voraus und Grüße, Uwe
 
Anbei.
Das wichtige sind die Konstanten in Module1. Kann sein, dass ich mich auch verzählt habe :)

Der eigentliche code ist in InitArray (was ich jedesmal aufrufe. Könnte man auch einmal initialisieren bei aufruf der Mappe), UND ComboBox1_Click (NICHT CHANGE!)

Ich hab jetzt nicht alle Monate gemacht, aber du kannst die Logik erkenne.
Übrigens hattest du mir ein Ei gelegt: In deinen Beispieldaten fehlte die Spalte für den 29.02.2023
 

Anhänge

  • Mappe1.zip
    23,7 KB · Aufrufe: 1

Neue Beiträge

Zurück