Thema Datum  Von Nutzer Rating
Antwort
Rot Spalten anhand aktuellem Monat ausblenden
22.12.2016 16:05:34 Lisa
NotSolved
22.12.2016 16:06:19 Gast223
NotSolved
22.12.2016 16:17:31 Gast25937
NotSolved

Ansicht des Beitrags:
Von:
Lisa
Datum:
22.12.2016 16:05:34
Views:
1015
Rating: Antwort:
  Ja
Thema:
Spalten anhand aktuellem Monat ausblenden
Hallo zusammen, ich versuche mich gerade für eine Tabelle an VBA und für mein erstes Mal, hab ich schon einiges durch diverse Foren hinbekommen. Leider fehlt mir das Hintergrundwissen um manche "Formeln" zu verstehen und dann zu ändern. Was ich will: Eine Tabelle mit mehreren Spalten (Jan-Dez Vorjahr Spalte F-Q (Datum in Zeile 13, Bereich "Vorjahr") , Jan-Dez aktuelles Jahr Spalte S-AD (Datum in Zeile 13, Bereich "Monate"), Plan aktuelles Jahr(Spalte AJ-AP) und dazugehörige Abweichungen) unterschiedlich darstellen: 1. Ist-Vorjahresvergleich bis zum aktuellen Monat, d.h. im April 2017 will ich Jan-Apr 2016 und Jan-Apr 2017 darstellen, den Rest (inkl. Plan) ausblenden. 2. Ist-Planvergleich bis zum aktuellen Monat, d.h. im April 2017 nur Jan-Apr.2017 und den Plan darstellen. Jeweils den Plan oder das Vorjahr einblenden habe ich schon hinbekommen, auch im Vorjahr die hinteren Monate ausblenden. Was mir fehlt ist, dass ich in 2017 die übrigen Monate ausblenden kann. Einfach zweimal das gleiche Makro auf zwei Bereiche kopieren hat nicht geklappt. Außerdem blenden er im Moment die Spalten aus, wenn ich das Datum in einer bestimmten Zelle ändere. Ich hätte es lieber über einen Button. Vielleicht kann mir jemand eine Weihnachtsfreude machen :) Hier mein bisheriges Werk: Sub VorjahrEinblenden() Sheets("PSK_Makro").Activate Columns("F:R").EntireColumn.Hidden = False Columns("AJ:AP").EntireColumn.Hidden = True End Sub Sub PlanEinblenden() Sheets("PSK_Makro").Activate Columns("F:R").EntireColumn.Hidden = True Columns("AJ:AP").EntireColumn.Hidden = False End Sub Private Sub ToggleButton1_Click() Dim TB As ToggleButton Set TB = ToggleButton1 If TB.Value = True Then TB.Caption = "Vorjahr einblenden" Call PlanEinblenden Else TB.Caption = "Plan einblenden" Call VorjahrEinblenden End If End Sub Private Sub ToggleButton2_Click() Dim TB2 As ToggleButton2 Set TB2 = ToggleButton2 If TB2.Value = True Then TB2.Caption = "bis YTD" Call HideXinD Else TB2.Caption = "alle Monate" Call ShowAll End If End Sub Private Sub HideXinD() For i = Columns(10, s) To Columns(10, AD) If Cells(10, i) = "" Then Cells(10, i).Select Selection.EntireColumn.Hidden = True End If Next End Sub Public Sub ShowAll() Columns("S:AD").EntireColumn.Hidden = False End Sub Private Sub Worksheet_Change(ByVal Target As Range) Dim i As Integer, c As Integer Dim s_letzte As Range Dim s_erste As Range Dim s As Range If Target.Address <> "$AS$12" Then Exit Sub 'Auswahl geändert: Set s_erste = Range("Vorjahr")(1) Set s_letzte = Range("Vorjahr")(1).Offset(0, Range("Vorjahr").Count - 1) Range("Vorjahr").EntireColumn.Hidden = False For Each s In Range("Vorjahr") If s.Value > Target.Value Then Range(s, s_letzte).EntireColumn.Hidden = True Exit For End If Next End Sub Private Sub Worksheet_Change2(ByVal Target As Range) Dim i As Integer, c As Integer Dim s_letzte As Range Dim s_erste As Range Dim s As Range If Target.Address <> "$AS$13" Then Exit Sub 'Auswahl geändert: Set s_erste = Range("Monate")(1) Set s_letzte = Range("Monate")(1).Offset(0, Range("Monate").Count - 1) Range("Monate").EntireColumn.Hidden = False For Each s In Range("Monate") If s.Value > Target.Value Then Range(s, s_letzte).EntireColumn.Hidden = True Exit For End If Next End Sub Vielen Dank und liebe Grüße Lisa

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Spalten anhand aktuellem Monat ausblenden
22.12.2016 16:05:34 Lisa
NotSolved
22.12.2016 16:06:19 Gast223
NotSolved
22.12.2016 16:17:31 Gast25937
NotSolved