Microsoft Excel

Herbers Excel/VBA-Archiv

Spalte ausblenden bei zelländerung

Betrifft: Spalte ausblenden bei zelländerung von: Ines
Geschrieben am: 16.09.2004 15:51:55

Hi!Möchte eine Spalte ausblenden, wenn der Wert in zelle R9>1 ist.
Wie kann ich das Makro schreiben, dass das Makro automatisch ausgeführt wird, d.h. dass die Spalte ausgeblendet wird, sobald sich der Wert ändert???
Mein Makro lautet bis jetzt:

Sub Ausblenden()

If Range("R9").Value > 1 Then
  
    Columns("H:H").Select
    Selection.EntireColumn.Hidden = True
    Columns("O:O").Select
    Selection.EntireColumn.Hidden = True
Else
Columns("H:H").Select
    Selection.EntireColumn.Hidden = False
    Columns("O:O").Select
    Selection.EntireColumn.Hidden = False
End If

End Sub

Funktioniert auch mit Strg.
  


Betrifft: AW: Spalte ausblenden bei zelländerung von: Reinhard
Geschrieben am: 16.09.2004 16:04:18

Hi Ines,
was bedeutet denn "Funktioniert auch mit Strg" ?
Folgenden Code in den Codebereich deines Tabellenblattes.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) <> "R9" Then Exit Sub
    Columns("H:H").EntireColumn.Hidden = Range("R9").Value > 1
    Columns("O:O").EntireColumn.Hidden = Range("R9").Value > 1
End Sub

Gruß
Reinhard


  


Betrifft: AW: Spalte ausblenden bei zelländerung von: ransi
Geschrieben am: 16.09.2004 16:05:57

hallo ines

ist jetzt so aus der hand und nicht getestet, müsste aber gehn:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Range("R9").Address Then If Target.Value > 1 Then Call ausblenden
End Sub

ransi


  


Betrifft: AW: Spalte ausblenden bei zelländerung von: Reinhard
Geschrieben am: 16.09.2004 16:15:32

Hi ransi,
nö, wenn schon so, dann
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$R$9" Then Call ausblenden
End Sub



  


Betrifft: AW: Spalte ausblenden bei zelländerung von: Ines
Geschrieben am: 17.09.2004 19:11:38

Viele Dank erst mal...hab das auch mit Worksheet_Change probiert....das funktioniert aber nur wenn ich in R9 den Wert per Hand ändere...d.h. das Makro wird ausgelöst, wenn ich Enter drücke.
Allerdings ist auf der zelle ein Bezug....es ist praktisch das Ausgabefenster eines DropDowns. Hab das DropDown nciht selebr gemacht, weiß deshalb auch nicht den Code und gar nix. Wie kann ich also das Makro auslösen, wenn sich nur der Wert ändert. Sagen wir die Formel in R9 ist =R10???


 

Beiträge aus den Excel-Beispielen zum Thema "Spalte ausblenden bei zelländerung"