Anzeige
Archiv - Navigation
1688to1692
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Spalten ausblenden mit Makro

Spalten ausblenden mit Makro
24.04.2019 10:14:50
Alex
Hallo Zusammen.
Irgendwo ist der Wurm drin. Ich habe zwei Tabellen. Wenn in Tabelle1 (Luftmengenermittlung) in Zelle "BP13" eine Zahl steht (1-10), sollen in Tabelle2 (Anlagenzusammenfassung) gewisse Spalten ausgeblendet werden. Hab auch ein Makro geschrieben, der allerdings nicht so recht möchte.
Case1: Blende Spalten I bis AR aus
Case2: Blende Spalten M bis AR aus
Case3: Blende Spalten Q bis AR aus
Case4: Blende Spalten U bis AR aus
Case5: Blende Spalten Y bis AR aus
Case6: Blende Spalten AC bis AR aus
Case7: Blende Spalten AG bis AR aus
Case8: Blende Spalten AK bis AR aus
Case9: Blende Spalten AO bis AR aus
Case10: Blende nix aus
Sub:

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Target.Address = "$BP$13" Then
Select Case Target.Value
Case 1
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("I1:AR1").Hidden = True
Case 2
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("M1:AR1").Hidden = True
Case 3
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("Q1:AR1").Hidden = True
Case 4
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("U1:AR1").Hidden = True
Case 5
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("Y1:AR1").Hidden = True
Case 6
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("AC1:AR1").Hidden = True
Case 7
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("AG1:AR1").Hidden = True
Case 8
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("AK1:AR1").Hidden = True
Case 9
Worksheets("Anlagenzusammenfassung").Range.Hidden = False
Range("AO1:AR1").Hidden = True
Case Else
'nix
End Select
End If
End Sub

Habt Ihr eine Idee?
Vielen Dank VG Alex

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten ausblenden mit Makro
24.04.2019 10:24:57
Nepumuk
Hallo Alex,
so besser?
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$BP$13" Then
With Worksheets("Anlagenzusammenfassung")
Select Case Target.Value
Case 1
.Columns.Hidden = False
.Columns("I:AR").Hidden = True
Case 2
.Columns.Hidden = False
.Columns("M:AR").Hidden = True
Case 3
.Columns.Hidden = False
.Columns("Q:AR").Hidden = True
Case 4
.Columns.Hidden = False
.Columns("U:AR").Hidden = True
Case 5
.Columns.Hidden = False
.Columns("Y:AR").Hidden = True
Case 6
.Columns.Hidden = False
.Columns("AC:AR").Hidden = True
Case 7
.Columns.Hidden = False
.Columns("AG:AR").Hidden = True
Case 8
.Columns.Hidden = False
.Columns("AK:AR").Hidden = True
Case 9
.Columns.Hidden = False
.Columns("AO:AR").Hidden = True
End Select
End With
End If
End Sub

Gruß
Nepumuk
Anzeige
AW: Spalten ausblenden mit Makro
24.04.2019 10:55:23
Alex
Geht leider noch nicht (Es kommt keine Fehlermeldung aber es wird auch nichts ausgeblendet).
Ich habe einen ähnlichen Fallbefehl in der Tabelle, nur das dieser bei bestimmten Fällen Zeilen ausblendet. Kann es sein, dass der eine den anderen blockiert? Habe deinen nur in worksheet_change1 umbenannt, dass ein Unterschied entsteht.
AW: Spalten ausblenden mit Makro
24.04.2019 11:04:25
hary
Moin
Wie beim Highlaender: Es kann nur einen(Worksheet_Change) geben. ;-))
Du musst im Worksheet_Change Ereigniss beides unterbringen.
If Target.Adress = "$C$4"
Hier dein Code
end if
If Target.Adress = "$BP$13"
Hier der andere Code
end if
gruss hary
Anzeige
AW: Spalten ausblenden mit Makro
24.04.2019 11:29:43
Alex
Jetzt macht sie gar nichts mehr :(
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Target.Address = "$C$4" Then
Select Case Target.Value
Case 1
Worksheets("Luftmengenermittlung").Rows.Hidden = False
Rows("26:137").Hidden = True
Rows("143:156").Hidden = True
Worksheets("Anlagenzusammenfassung").Rows("7:20").Hidden = True
Case 2
Worksheets("Luftmengenermittlung").Rows.Hidden = False
Rows("42:137").Hidden = True
Rows("145:156").Hidden = True
Worksheets("Anlagenzusammenfassung").Rows("9:20").Hidden = True
Case 3
Worksheets("Luftmengenermittlung").Rows.Hidden = False
Rows("58:137").Hidden = True
Rows("147:156").Hidden = True
Worksheets("Anlagenzusammenfassung").Rows("11:20").Hidden = True
Case 4
Worksheets("Luftmengenermittlung").Rows.Hidden = False
Rows("74:137").Hidden = True
Rows("149:156").Hidden = True
Worksheets("Anlagenzusammenfassung").Rows("13:20").Hidden = True
Case 5
Worksheets("Luftmengenermittlung").Rows.Hidden = False
Rows("90:137").Hidden = True
Rows("151:156").Hidden = True
Worksheets("Anlagenzusammenfassung").Rows("15:20").Hidden = True
Case 6
Worksheets("Luftmengenermittlung").Rows.Hidden = False
Rows("106:137").Hidden = True
Rows("153:156").Hidden = True
Worksheets("Anlagenzusammenfassung").Rows("17:20").Hidden = True
Case 7
Worksheets("Luftmengenermittlung").Rows.Hidden = False
Rows("122:137").Hidden = True
Rows("155:156").Hidden = True
Worksheets("Anlagenzusammenfassung").Rows("19:20").Hidden = True
Case 8
Worksheets("Luftmengenermittlung").Rows.Hidden = False
Worksheets("Anlagenzusammenfassung").Rows.Hidden = False
Case Else
'nix
End Select
End If
If Target.Address = "$BP$13" Then
With Worksheets("Anlagenzusammenfassung")
Select Case Target.Value
Case 1
.Columns.Hidden = False
.Columns("I:AR").Hidden = True
Case 2
.Columns.Hidden = False
.Columns("M:AR").Hidden = True
Case 3
.Columns.Hidden = False
.Columns("Q:AR").Hidden = True
Case 4
.Columns.Hidden = False
.Columns("U:AR").Hidden = True
Case 5
.Columns.Hidden = False
.Columns("Y:AR").Hidden = True
Case 6
.Columns.Hidden = False
.Columns("AC:AR").Hidden = True
Case 7
.Columns.Hidden = False
.Columns("AG:AR").Hidden = True
Case 8
.Columns.Hidden = False
.Columns("AK:AR").Hidden = True
Case 9
.Columns.Hidden = False
.Columns("AO:AR").Hidden = True
End Select
End If
End Sub

Anzeige
AW: da fehlt was
24.04.2019 11:34:14
hary
Moin
Hier fehlt end with
  End Select
End If

  End Select
End With
End If

gruss hary
AW: da fehlt was
24.04.2019 11:55:58
Alex
Jetzt :)
Tut mir leid zu nerven aber die besagte Zelle BP13 ist das Ergebnis einer Formel. Die wiederum nicht erkannt wird, um die Spalten auszublenden. Setze ich anstelle des Ergebnisses eine Zahl ein geht's komischerweise.
VG Alex
AW: da fehlt was
24.04.2019 12:24:30
hary
Moin
Change wirkt nur bei haendischem Eintrag bzw. wechsel mit dropdown.
Fuer Formeln nimmt man Calculate, hat aberden Nachteil, dass bei jeder Formelberechnung ausgefuehrt wird.
Oder du nimmst die Adresse mit der sich die Formel berechnet. Sollte ja eine mit haendischem Eintrag sein!?
gruss hary
Anzeige
AW: da fehlt was
24.04.2019 12:55:27
Alex
Wäre auch zu schön gewesen :)
Vielen Dank für die Geduld
AW: Spalten ausblenden mit Makro
24.04.2019 11:05:35
Nepumuk
Hallo Alex,
das Event muss zwingen so heißen wie es Excel vorschreibt. In dem Fall also:
Worksheet_Change
Gruß
Nepumuk

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige