ausblenden von spalten mit makro

Bild

Betrifft: ausblenden von spalten mit makro
von: pit
Geschrieben am: 05.04.2005 13:37:34
hallo zusammen!
ich möchte mit einem makro prüfen, in welchen spalten (von spalte 1 bis spalte 70) in der zeile a eine 1 steht. wird eine 1 gefunden, soll die SPALTE ausgeblendet werden, wird eine 0 gefunden, soll die SPALTE eingeblendet werden...
kann mir jemand helfen?
vielen dank im voraus sendet auch pit

Bild

Betrifft: AW: ausblenden von spalten mit makro
von: u_
Geschrieben am: 05.04.2005 13:52:32
Hallo,
anscheinend verdrehst du da einige Begriffe.
Mein Excel hat Zeilen 1-65536 und Spalten A-IV.
Soll also in A1-A70 nach 1 bzw. 0 gesucht und die entsprechende Zeile ausgeblendet/eingeblendet werden?

Sub ausein()
dim i as integer
for i=1 to 70
Rows(i).visible=not (cells(i,1)=1
next i
End Sub

Gruß
Bild

Betrifft: AW: ausblenden von spalten mit makro
von: pit
Geschrieben am: 05.04.2005 14:22:07
hallo!
ja, u hat recht...! ich habe die begriffe durcheinander geworfen... also...
ich will in zeile 1 über die spalten a bis bh nach den ziffern 1 und 0 suchen! wenn eine 1 gefunden wird, soll die SPALTE ausgeblendet werden in der diese steht. steht dort eine 0, soll die SPALTE (wieder) eingeblendet werden (d.h. es gibt eine funktion, die aus der 1 eine 0 machen kann. und dann soll die spalte auch wieder sichtbar werden).
es ist also ganz wichtig, dass das makro jedesmal ALLE spalten durchsucht und entsprechend ein und ausblendet, da sich die verteilung der 1 und 0 verändern kann...
hoffe diesmal nichts 'durcheinander geworfen zu haben' und hoffe weiter auf eure hilfe!
danke, pit
Bild

Betrifft: AW: ausblenden von spalten mit makro
von: WernerB.
Geschrieben am: 05.04.2005 14:33:59
Hallo Pit,
wie gefällt Dir das?

Sub Pit()
Dim i As Integer
    Application.ScreenUpdating = False
    For i = 60 To 1 Step -1
      If Cells(1, i).Text = "1" Then
        Columns(i).EntireColumn.Hidden = True
      ElseIf Cells(1, i).Text = "0" Then
        Columns(i).EntireColumn.Hidden = False
      End If
    Next i
    Application.ScreenUpdating = True
End Sub

Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Bild

Betrifft: AW: ausblenden von spalten mit makro
von: pit
Geschrieben am: 05.04.2005 15:10:48
hallo werner,
danke für dein makro! im grunde genau das, was ich suche! nur blendet es die zeilen nicht mehr ein, wenn sich die ziffer von 1 auf 0 ändert.
d.h. zum beispiel zelle b1 steht auf 1 und wird ausgeblendet. jetzt setzt im nächsten schritt meine formel (die ausgeblendete zelle) wieder auf die ziffer 0. das makro sollte jetzt beim nächsten start die zelle wieder einblenden (da sie ja nun nicht mehr "1" ist).
klar... ich könnte ein makro vorschalten, dass zunächst alle spalten einblendet und dann die spalten mit der 1 wieder ausblendet. es gibt aber ein paar spalten die nie eingeblendet werden sollen...
gibt es dafür auch eine lösung?
nochmal danke für deinen tipp, pit
Bild

Betrifft: AW: ausblenden von spalten mit makro
von: andre
Geschrieben am: 05.04.2005 19:05:34
Hallo Pit,
das Makro tut das doch, wenn Du es nach der Änderung wieder startest.
Bild

Betrifft: AW: ausblenden von spalten mit makro
von: WernerB.
Geschrieben am: 06.04.2005 07:37:02
Hallo Pit,
ist es so besser?

Sub Pit()
Dim zA As String, _
    i As Integer
    Application.ScreenUpdating = False
    zA = ActiveCell.Address
    For i = 60 To 1 Step -1
      If Cells(1, i).Value = 1 Then
        Columns(i).EntireColumn.Hidden = True
      ElseIf Cells(1, i).Value <> "" And Cells(1, i).Value = 0 Then
        Columns(i).EntireColumn.Hidden = False
      End If
    Next i
    Application.Goto Reference:=Range("A1"), Scroll:=True
    Range(zA).Select
    Application.ScreenUpdating = True
End Sub

Gruß
WernerB.
 Bild

Beiträge aus den Excel-Beispielen zum Thema "ausblenden von spalten mit makro"