Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sub mit Argumenten aufrufen

Forumthread: Sub mit Argumenten aufrufen

Sub mit Argumenten aufrufen
05.04.2022 14:02:44
Marc
Hi,
ich habe eine große Excel-Liste und möchte nur die Inhalte gemäß einer Parameterabfrage bei Start des Makros behalten.
Bisher habe ich ein Modul und hier eine SUB die eben diese Liste prüft und alle relevanten Zeilen löscht:

Sub Makro1()
Dim sht As Worksheet
Dim LastRow As Long, Zeile As Long
Set sht = Sheets("Tabelle1")
LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row
For Zeile = LastRow To 2 Step -1
If InStr(sht.Cells(Zeile, 5).Value, "03.2022") = 0 Then
sht.Rows(Zeile).Delete Shift:=xlUp
End If
Next Zeile
End Sub
Nun möchte ich das Datum - in meinem Fall "03.2022" - per Argument beim Aufruf des Makros übergeben, sodass ich die Sub auch für beliebige andere Monate nutzen kann. Wenn ich allerdings aus Sub Makro1 z.B. Sub Makro1(datum As String) mache wird mir überhaupt kein Makro mehr angezeigt, dass ich starten könnte.
Was mache ich falsch? Danke vorab.
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sub mit Argumenten aufrufen
05.04.2022 14:08:11
Rudi
Hallo,
z.B.

Sub Makro1(Datum As Date)
Dim sht As Worksheet
Dim LastRow As Long, Zeile As Long
Set sht = Sheets("Tabelle1")
LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row
For Zeile = LastRow To 2 Step -1
If InStr(sht.Cells(Zeile, 5).Value, Format(Datum, "MM.YYYY")) = 0 Then
sht.Rows(Zeile).Delete Shift:=xlUp
End If
Next Zeile
End Sub
Sub StartMakro1()
Dim Datum As Date
Datum = InputBox("Datum?")
Call Makro1(Datum)
End Sub
Gruß
Rudi
Anzeige
AW: Sub mit Argumenten aufrufen
05.04.2022 14:19:46
Marc
Passt - danke!
AW: Sub mit Argumenten aufrufen
05.04.2022 14:08:36
onur

Sub Makro1(datum as string)
Dim sht As Worksheet
Dim LastRow As Long, Zeile As Long
Set sht = Sheets("Tabelle1")
LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row
For Zeile = LastRow To 2 Step -1
If InStr(sht.Cells(Zeile, 5).Value, datum) = 0 Then
sht.Rows(Zeile).Delete Shift:=xlUp
End If
Next Zeile
End Sub

Anzeige
das löst für ihn aber...
05.04.2022 14:17:34
Rudi
...nicht dieses Problem:

wird mir überhaupt kein Makro mehr angezeigt, dass ich starten könnte.
Gruß
Rudi
AW: das löst für ihn aber...
05.04.2022 14:20:31
onur
Mehr kriegt er niocht ohne eine Datei, denn alles Andere wäre Rumraterei: "Was steht wirklich in der Zelle", "Was steht in Spalte 5" usw...
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige