Hallo an die Experten hier,
vorweg ich bin noch ein absoluter Vba Neuling ;)
Ich habe versucht (mit HIlfe von google und diversen Büchern :P) ein Makro zu erstellen, welches auf Grund von Inputboxen mir nur Spalten mit eingegebenem Datum anzeigt.
Das Makro funktioniert soweit für einen Tag. Sobald ich jedoch versuche eine Bereichsfunktion hinzuzufügen, geht es nicht mehr.
Ich vermute dass mit dieser Bereichsfunktion bzw. der Variablendeklaration was nicht stimmt, habe aber zu wenig Ahnung um das Problem zu lösen. Ich habe bereits versucht die Variablen alle als Date oder alle als Range zu deklarieren, hat aber auch nichts genützt.
Vielleicht könnte sich jemand mit Ahnung den Code mal anschauen und mir meinen Fehler aufzeigen?
Das wäre wirklich super! Vielen Dank schonmal im Voraus!
Und hier der Code:
Option Explicit
Sub SpaltenAusblenden()
Dim i As Integer
Dim UsedColumns As Integer
Dim MonatVon As Date
Dim MonatBis As Date
Dim Bereich As Range ' ?? Korrekte Form?
MonatVon = InputBox("Bitte Datumsbreich eingeben. Von:") ' Hier den gewünschten Monat eingeben
MonatBis = InputBox("Bis:")
i = 3 ' ab Spalte C suchen
Set Bereich = ActiveSheet.Range("C" & MonatVon, ":NC" & MonatBis) ' Laufzeitfehler?
UsedColumns = ActiveSheet.Cells(2, Columns.Count).End(xlToLeft).Column ' Zählt benutzte Spalten zum abkürzen der Schleife
Do
If ActiveSheet.Cells(2, i).Value = Bereich Then
ActiveSheet.Columns(i).EntireColumn.Hidden = False
Else
ActiveSheet.Columns(i).EntireColumn.Hidden = True
End If
i = i + 1
Loop Until i > UsedColumns ' Abbruchbedingung Ende = Stop
End Sub
|