21.05.2017, 21:48
Liebe Community!
Habe ein Problem bei dem ihr mir hoffentlich helfen könnt.
Ich habe ein Code-Schnipsel aus dem Internet, welches eigentlich perfekte Dienste leistet in dem es in der zweiten Zeile in welchem "x" zu finden sind, diese Spalten ausblendet.
Leider funktioniert selber Code nicht wenn ich diesen auf eine Schaltfläche in einem anderen Sheet (selbstverständlich in gleicher Arbeitsmappe) lege. Dachte mit Sheets.select ist es zu lösen, doch dem ist nicht so.
Nochmals kurz zusammengefasst: Im Blatt "Home" habe ich eine Schaltfläche, bei dessen Aktivierung er in das Blatt "Erfassung" wechseln soll und gleichzeitig die Spalten, welche in der 2. Zeile in "x" enthalten, ausblenden soll.
Könnt ihr mir helfen wo der Fehler ist?
Private Sub CommandButton1_Click()
Sheets("Erfassung").Select
Dim ob As Range
Dim rng As Range, firstAddress, temp As Range
Set rng = Rows(2)
Set ob = rng.Find("x", , LookIn:=xlValues, LookAt:=xlWhole)
If Not ob Is Nothing Then
firstAddress = ob.Address
Do
If temp Is Nothing Then Set temp = ob
Set temp = Application.Union(temp, ob)
Set ob = rng.FindNext(ob)
Loop While Not ob Is Nothing And ob.Address <> firstAddress
End If
On Error Resume Next
temp.EntireColumn.Hidden = True
End Sub
Habe ein Problem bei dem ihr mir hoffentlich helfen könnt.
Ich habe ein Code-Schnipsel aus dem Internet, welches eigentlich perfekte Dienste leistet in dem es in der zweiten Zeile in welchem "x" zu finden sind, diese Spalten ausblendet.
Leider funktioniert selber Code nicht wenn ich diesen auf eine Schaltfläche in einem anderen Sheet (selbstverständlich in gleicher Arbeitsmappe) lege. Dachte mit Sheets.select ist es zu lösen, doch dem ist nicht so.
Nochmals kurz zusammengefasst: Im Blatt "Home" habe ich eine Schaltfläche, bei dessen Aktivierung er in das Blatt "Erfassung" wechseln soll und gleichzeitig die Spalten, welche in der 2. Zeile in "x" enthalten, ausblenden soll.
Könnt ihr mir helfen wo der Fehler ist?
Private Sub CommandButton1_Click()
Sheets("Erfassung").Select
Dim ob As Range
Dim rng As Range, firstAddress, temp As Range
Set rng = Rows(2)
Set ob = rng.Find("x", , LookIn:=xlValues, LookAt:=xlWhole)
If Not ob Is Nothing Then
firstAddress = ob.Address
Do
If temp Is Nothing Then Set temp = ob
Set temp = Application.Union(temp, ob)
Set ob = rng.FindNext(ob)
Loop While Not ob Is Nothing And ob.Address <> firstAddress
End If
On Error Resume Next
temp.EntireColumn.Hidden = True
End Sub