Letzes zeichen in Spalte M oder V dann Zeilen löschen
#1
Hallo zusammen
habe ein Makro gefunden und wollte es auf meine Bedürfnisse anpassen, habe es aber als Anfänger leider nicht geschafft.
Wäre nett, wenn dies jemand anpassen könnte.

Wenn in Spalte A bis S ab Zeile 5 das letzte Zeichen ein M oder V ist, sollten Zahlen links davon gelöscht und die Zeilen augeblendet werden.
Auf Wunsch sollte das M und V wieder eingeblendet werden.

Dies sollte durch 2 Makro geschehen.

Mit freundlichen Grüssen
Martin


Angehängte Dateien
.xlsm   M_V ausblenden.xlsm (Größe: 27,87 KB / Downloads: 8)
Top
#2
hallo Martin,
Sub CommandButton1_Click()
Dim ob As Range
Dim rng As Range, temp As Range
Dim firstAddress As String
Set rng = Range("W4").CurrentRegion
Set ob = rng.Find("M", , LookIn:=xlValues, lookat:=xlWhole)
If Not ob Is Nothing Then
firstAddress = ob.Address
Do
ob.EntireRow.Cells(1).Resize(, ob.Column - 1) = ""
If temp Is Nothing Then
Set temp = ob
Else
Set temp = Application.Union(temp, ob)
End If
Set ob = rng.FindNext(ob)
Loop While Not ob Is Nothing And ob.Address <> firstAddress
End If
Set ob = rng.Find("V", , LookIn:=xlValues, lookat:=xlWhole)
If Not ob Is Nothing Then
firstAddress = ob.Address
Do
ob.EntireRow.Cells(1).Resize(, ob.Column - 1) = ""
If temp Is Nothing Then
Set temp = ob
Else
Set temp = Application.Union(temp, ob)
End If
Set ob = rng.FindNext(ob)
Loop While Not ob Is Nothing And ob.Address <> firstAddress
End If
temp.EntireRow.Hidden = True
End Sub

Sub CommandButton2_Click()
Rows.Hidden = False
End Sub
Gruß Uwe
Top
#3
Halo Uwe,
Danke für das Makro, das ging ja fix.
Es funktioniert perfekt.
Danke für deine Mühe.
Gruss Martin     
:98:
Top
#4
Hallo Uwe
beim Starten weiss man nicht, welche Taste aktiv ist.
Wenn Ausgeblendet ist und nochmals Ausblenden drücke kommt eine Fehlermeldung im Makro
"temp.EntireRow.Hidden = True".
Könntest du dies noch Abfangen, oder gibt es eine Möglichkeit, die aktiveTaste zu markieren.
Danke für deine Mühe.
Gruss Martin
Top
#5
Hallo Martin,

sorry, das wollte ich noch einbauen, hatte es aber vergessen.  Blush
Ändere es so:
  If Not temp Is Nothing Then
    temp.EntireRow.Hidden = True
  End If
End Sub
Gruß Uwe
Top
#6
Halo Uwe
danke für die Ergänzung. Jetzt ist es perfekt.
Danke und ein chönes Wochenende wünscht dir
Martin    :98:
Top
#7
Hallo Uwe,
entschuldige, dass ich dich noch einmal um Hilfe bitte.
Was muss ich ändern, wenn an Stelle von M  und  V
M Maria oder V Peter ausgeblendet werden sollen ?
Die angehängten Namen ändern sich immer.
Gruss Martin
Top
#8
Hallo Martin,

in den beiden Zeilen stehen die jeweiligen Suchbegriffe:
Set ob = rng.Find("M", , LookIn:=xlValues, lookat:=xlWhole)
Set ob = rng.Find("V", , LookIn:=xlValues, lookat:=xlWhole)
Gruß Uwe
Top
#9
Hallo Uew,
danke für die Info. Ist schon klar, aber wie muss ich das ändern damit
V Peter oder M Maria ausgeblendet werden anstelle der alleinstehenden M oder V.
Die angehängten Namen ändern immer.
Bin noch nicht so bewandert in der Makrosprache.
Gruss Martin
.
Top
#10
Hallo Martin,
Set ob = rng.Find("M Maria", , LookIn:=xlValues, lookat:=xlWhole)
Set ob = rng.Find("V Peter", , LookIn:=xlValues, lookat:=xlWhole)
Gruß Uwe
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste