Ich habe ein wenig Bauchschmerzen, als Einsteiger detaillierte Erklärungen zu diesem Code abzugeben. Aber was soll`s, die Gefahr von Prügel ist nicht allzu groß.
Die Dim-Zeile muss sein, wenn Du Option Explizit oben stehen hast. Ist erstmal egal
warum.
Sub Anna()
Mit "Sub" beginnt der Aufruf des Makros. Anna habe ich hier eingegeben, damit das
entsprechende Makro einen eindeutigen Aufruf hat (betrifft ja auch das Wort in der
Spalte B und ist so logisch zuzuordnen. Die Klammern müssen sein, mehr dazu muss man erst einmal nicht wissen.
For i = 2 To 20
i steht für Zelle 2 bis 20. Erst mal unerheblich in welcher Spalte. Diese Zellen (2 To
20) werden später nach dem Wort Anna" durchsucht. (Wenn z.B. 500 Zeilen belegt sind,
sollte die letzte Zahl auch 500 lauten.)
If Cells(i, 2) = "Anna" Then Rows(i).Hidden = True
Sehr frei übersetzt: Wenn die Zelle i (2. Zelle, siehe For i = 2...) in Spalte 2 (,2
Spalte B ist die zweite) den Inhalt gleich Anna" hat, dann Zeile(i), (in diesem Falle
Zeile 2) ausblenden (hidden = True)(= False wäre einblenden). Damit wäre "For i=2"
erledigt. Da es oben aber For i = 2 To 20 heißt, wird das Ganze bis Zeile 20 wiederholt
(nach "Anna" gesucht).
Next
Ist erforderlich, damit die (nex)te Zeile bis Zeile 20 auf den Inhalt Anna" geprüft
werden kann
Mit"End Sub
"beendest Du den Sub-Aufruf am Anfang.
Das Ganze weist Du einer Schaltfläche aus dem Menü Formular zu. Mit Rechtsklick auf die
oberen Menüleisten kannst Du "Formular" hierfür einbinden. Dann Menüpunkt Schaltfläche" anklicken und auf die Exceltabelle bringen. Danach wird
gefragt, welches Makro Du mit der Schaltfläche verbinden willst.
Ich glaub nicht, dass Dir das bei Deinem Projekt so wirklich weiterhilft. Versuch erst
mal mit dem Makrorecorder Vorgänge aufzuzeichnen und entsprechend einzubinden. Danach
solltest Du dich darum bemühen, den aufgezeichneten Code zu kürzen. Der Recorder
zeichnet auch viel unnützen Müll auf. Dazu findest Du ne Menge Hilfe in der Recherche.