mein problem: ich habe eine tabelle. zeilen 1 bis 5 bilden den kriterienbereich für den spezialfilter, zeilen 7ff. den datenbereich.
ich habe ein makro, das den cursor in den datenbereich befördert und den spezialfilter startet, aufgenommen.
es gibt 4 zeilen im kriterienbereich, die ich mit suchkriterien füllen kann. wenn ich aber nicht alle vier zeilen benötige, muss ich die anderen, leeren zeilen "entwerten", indem in die erste spalte ein zeichen gedruckt wird, das die suche nicht beeinflußt.
das funktioniert gut, nur stört es noch ein bisschen, dass man vor einer neuen recherche erst diese "entwrtungen" in der ersten spalte wieder löschen muss, wenn man beim nächsten mal mehr zeilen braucht.
der lösungsweg ist mir klar, ich kann es nur nicht programmieren.
beim starten des recherche-makros soll folgendes passieren:
er soll die zeilen des kriterienbereichs (Zeilen 2 bis 5, Spalten A bis R) auf einträge prüfen, und beim anschließenden spezialfilter nur den bereich der belegten zeilen als kriterienbereich nehmen.
es gibt zwischen zwei belegten zeilen keine leerzeilen.
ich habe es schon versucht, indem ich eine variable i um eins erhöhen lasse, wenn eine zeile belegt ist. i gibt dann die anzahl der zeilen des kriterienbereichs an.
als ich dann aber im spezialfilter als kriterienbereich rows("1:i") eingegeben habe, meldet mir VBA, dass das keine zulässige eingabe ist.
wie funktioniert es?
milian