Office: (Office 2016) Code optimieren

Helfe beim Thema Code optimieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich würde gerne meinen Code optimieren. Leider komme ich alleine nicht weiter und benötige deshalb eure Hilfe. Ich habe ein... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von lajouliee, 29. Dezember 2018.

  1. Code optimieren


    Hallo zusammen,

    ich würde gerne meinen Code optimieren.
    Leider komme ich alleine nicht weiter und benötige deshalb eure Hilfe.

    Ich habe ein Dropdown erstellt, bei der man zwischen Gesamtansicht, 1., 2., 3. und 4. Quartal wählen kann.

    Mit einem bzw. mehreren Makros möchte ich jetzt jeweils das Volumen der einzelnen Quartale ein-/ausblenden.

    Fürs Ausblenden habe ich bereits folgenden Code geschrieben:

    Private Sub Worksheet_Change(ByVal Target As Range)

    'Variable Spalte
    If Target.Address = "$A$1" Then

    ' Nimm den Wert des geänderten Bereiches
    Select Case Target.Value

    Case "(All figures)"
    ' Blende alle Spalten ein
    ActiveSheet.Columns.Hidden = False

    ' Blende Spalten aus
    Columns("a:cd").EntireColumn.Hidden = False

    Case "1. Quartal"
    ' Blende alle Spalten ein
    ActiveSheet.Columns.Hidden = False
    ' Blende Spalten aus
    Columns("t:ab").EntireColumn.Hidden = True
    Columns("ac:ak").EntireColumn.Hidden = True
    Columns("al:at").EntireColumn.Hidden = True
    Columns("bd:bl").EntireColumn.Hidden = True
    Columns("bm:bu").EntireColumn.Hidden = True
    Columns("bv:cd").EntireColumn.Hidden = True
    Columns("cn:cv").EntireColumn.Hidden = True
    Columns("cw:de").EntireColumn.Hidden = True
    Columns("df:dn").EntireColumn.Hidden = True

    Case "2. Quartal"
    ' Blende alle Spalten ein
    ActiveSheet.Columns.Hidden = False
    ' Blende Spalten aus
    Columns("b:j").EntireColumn.Hidden = True
    Columns("ac:ak").EntireColumn.Hidden = True
    Columns("al:at").EntireColumn.Hidden = True
    Columns("au:bc").EntireColumn.Hidden = True
    Columns("bm:bu").EntireColumn.Hidden = True
    Columns("bv:cd").EntireColumn.Hidden = True
    Columns("ce:cm").EntireColumn.Hidden = True
    Columns("cw:de").EntireColumn.Hidden = True
    Columns("df:dn").EntireColumn.Hidden = True

    Case "3. Quartal"
    ' Blende alle Spalten ein
    ActiveSheet.Columns.Hidden = False
    ' Blende Spalten aus

    Columns("b:j").EntireColumn.Hidden = True
    Columns("k:s").EntireColumn.Hidden = True
    Columns("t:ab").EntireColumn.Hidden = True
    Columns("al:at").EntireColumn.Hidden = True
    Columns("au:bc").EntireColumn.Hidden = True
    Columns("bd:bl").EntireColumn.Hidden = True
    Columns("bv:cd").EntireColumn.Hidden = True
    Columns("ce:cm").EntireColumn.Hidden = True
    Columns("cn:cv").EntireColumn.Hidden = True
    Columns("df:dn").EntireColumn.Hidden = True

    Case "4. Quartal"
    ' Blende alle Spalten ein
    ActiveSheet.Columns.Hidden = False
    ' Blende Spalten aus
    Columns("b:j").EntireColumn.Hidden = True
    Columns("k:s").EntireColumn.Hidden = True
    Columns("t:ab").EntireColumn.Hidden = True
    Columns("au:bc").EntireColumn.Hidden = True
    Columns("bd:bl").EntireColumn.Hidden = True
    Columns("bm:bu").EntireColumn.Hidden = True
    Columns("ce:cm").EntireColumn.Hidden = True
    Columns("cn:cv").EntireColumn.Hidden = True
    Columns("cw:de").EntireColumn.Hidden = True


    Case Else
    ' Blende alle Spalten ein
    ActiveSheet.Columns.Hidden = False
    ' Blende Spalten A:JJ ein
    Columns("a:do").EntireColumn.Hidden = False

    End Select

    ' Setze den Cursor zurück auf "A1"
    Target.Select

    End If

    End Sub



    Nun würde ich wie gesagt gerne einen Code haben, der mir das Volumen wieder einblendet. Natürlich spezifisch für die einzelnen Quartale.

    Kann mir bitte jemand weiterhelfen?? Code optimieren :confused:Code optimieren :confused:

    Oder wäre ein Toggle-Button besser? Code optimieren :confused:Code optimieren :confused:
     
    Zuletzt von einem Moderator bearbeitet: 30. November 2020
    lajouliee, 29. Dezember 2018
    #1
  2. steve1da Office Guru
  3. Beverly
    Beverly Erfahrener User
    Hi,

    du kannst die zusammenhängenden Spalten auch zusammen ausblenden und die nicht zusammenhängenden mittels Befehl Union zusammenfassen - das verkürzt den Code schon um einiges. Für das 1. Quartal z.B. kannst du aus deinen 9 Zeilen diese 1 Zeile machen

    Code:
    Union(Columns("t:at"), Columns("bd:cd"), Columns("cn:dn")).EntireColumn.Hidden = True
    
    
    Bis später,
    Karin
     
  4. Code optimieren

    Vielen Dank für eure Hilfe!
     
    lajouliee, 31. Dezember 2018
    #4
Thema:

Code optimieren

Die Seite wird geladen...
  1. Code optimieren - Similar Threads - Code optimieren

  2. Code läuft mit F8 durch, beim CommandButon nicht

    in Microsoft Excel Hilfe
    Code läuft mit F8 durch, beim CommandButon nicht: Hallo, wer könnte mir weiter helfen. Beim Bedienen mit F8 läuft der Code. Mit dem CommandButton kommt der Fehler bei Zeile: ActiveSheet.Range("D1").AutoFilter Field:=4, Criteria1:="=*" &...
  3. Code für Zeilensprung auf 125 Ändern

    in Microsoft Excel Hilfe
    Code für Zeilensprung auf 125 Ändern: Hallo, Ich habe mein Excel Datei auf 125 Prüflinge erhöht (vorher war es nur bis 75) Code habe ich auch angepasst damit es automatisch weiter springt beim messen. nur es funktioniert nicht mehr...
  4. Excel VBA - Code Hilfe (Spalten, Werte kopieren etc.)

    in Microsoft Excel Hilfe
    Excel VBA - Code Hilfe (Spalten, Werte kopieren etc.): Hallo, ich benötige Hilfe für ein Problem, welches ich leider selbst schwerlich als Anfänger nicht lösen kann: Ich möchte von dem Tabellenblatt "Tabelle1" aus den Zellen B8:B14, K8:K14, B18:B25,...
  5. VBA Code " Zeilenhöhe bei Verb. Zellen Funktioniert fasst"

    in Microsoft Excel Hilfe
    VBA Code " Zeilenhöhe bei Verb. Zellen Funktioniert fasst": Hallo Leute dieser Code für Zellenhöhe bei Verbundenen Zellen Funktioniert fast. Ich habe ein Code von jemand anderem bekommen der nicht in einem Forum ist. Ich kann gerade diese Person nicht...
  6. PDF mit Namen,Datum speichern im Zielordner

    in Microsoft Excel Hilfe
    PDF mit Namen,Datum speichern im Zielordner: Hallo, habe das Problem den Namen in Zelle D2, Vorname in Zelle D5 , das Datum steht in der Zelle B 10 und soll beim speichern so angezeigt werden (Max Mustermann 2023 Oktober) wie und wo muß ich...
  7. Liste mit VBA-Code erweitern/optimieren

    in Microsoft Excel Hilfe
    Liste mit VBA-Code erweitern/optimieren: Hallo, ich habe eine Planungsliste, wo mir letztes Jahr in diesem Forum schon sehr geholfen wurde mit der Programmierung von steve1da. Ich möchte gerne 2 Punkte bei diesem File erweitern: 1....
  8. Code optimieren, select weglassen

    in Microsoft Excel Hilfe
    Code optimieren, select weglassen: Hallo! Wie kann ich folgenden Code optimieren? Code: Sub findAttachment(actSheet As Worksheet) Dim lLastrow As Long Dim strRange As String Dim raC As Range Application.ScreenUpdating = False...
  1. Nixxnuzz
Schlagworte:
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden