Ich möchte gerne per Basic Makro einen Datenbereich filtern und die resultierenden Zeilen löschen.
Dafür habe ich mir folgendes Makro gesucht, kopiert und an meine Bedürfnisse angepasst:
Code: Alles auswählen
Sub applyMyCustomFilter
Const colID = 7 '< column #6 of the used range
Const sRegex = "1(\d\d\d)|(\d\d\d)" '< this is one regex including the ORs as |
cEQ = com.sun.star.sheet.FilterOperator.EQUAL' <some_column> EQUALs <some_regex>
Dim fld as new com.sun.star.sheet.TableFilterField
fld.Field = colID
fld.Operator = cEQ
fld.StringValue = sRegex
sh = ThisComponent.CurrentController.getActiveSheet()
rg = getUsedRange(sh)
fd = rg.createFilterDescriptor(True)
fd.ContainsHeader = True
fd.UseRegularExpressions = True
fd.IsCaseSensitive = False
fd.SkipDuplicates = False
fd.CopyOutputData = False
fd.setFilterFields(Array(fld))
rg.filter(fd)
End Sub
Wie muss ich diesen Code ergänzen um die Zeilen des Filterresultats (und nur diese) zu löschen?
Ich habe erst eben begonnen mich mit der Basic-Sprache auseinanderzusetzen und bin echt angewiesen auf Unterstützung. Deshalb wäre ich um jeden Input froh!
Vielen Dank schon im Voraus
Beste Grüsse
Clousi