Ich möchte alle Spalten von Daten, die Jahre nicht die letzten 2 Jahre sind, ausblenden. Dafür (ich weiß nicht, ob es der richtige Ansatz ist oder nicht) habe ich einige Untersuchungen durchgeführt, da ich nichts über Excel-Programmierung weiß, und ich habe dieses VBA-Skript erstellt, aber es scheint nicht zu funktionieren:Spalten eines Jahres ausblenden
Function OcultarFechas(Range)
Rg1 = Range ' B2:AA2
Flag = "ok"
For Each c1 In Range(Rg1).Cells
If Year(c1) <> Year(Date) Then
Columns(c1.Column).EntireColumn.Hidden = True
Else
Flag = "notok"
End If
If Flag = "notok" Then Exit For
Next c1
End Function
Es wäre wünschenswert, dass die Skripte ausgeführt wird, wenn ich die Tabelle öffnen, aber im Augenblick mit diesem Code, den ich glaube, ich brauche wie die Funktion auf einer Zelle zu nennen: „= OcultarFechas (B2: AA2)“.
PS. Die Daten sind geordnet, deshalb verlasse ich die for-Schleife, wenn das aktuelle Jahr gefunden wird, und aus dieser Spalte muss ich sie einblenden.
Ich habe das ausprobiert und funktioniert ziemlich gut, nur eine Frage einer Säule versteckt war, aber es gab kein Inhalt drin, aber ich konnte das umformatieren und es wird perfekt funktionieren. Wie kann ich dies bei jedem Öffnen der Tabelle automatisch tun? Danke – Fjallbacka
Edited die Lösung. Bitte guck dir das an. – sktneer
Um eine Spalte zu überspringen, wenn eine Zelle in dieser Spalte in Row2 leer ist, ändern Sie die IF-Anweisung mit --- If Year (Zellen (2, c)) "" Dann –
sktneer