[GELÖST] Leere Zellen rausfiltern und nur Werte in neue Tabelle übertragen
Verfasst: Do, 09.06.2022 09:17
Liebes Forum!
Ich möchte per Makro aus einer Spalte alle Werte in eine neue Tabelle kopieren, die nicht leer sind. Dafür hab ich auch ein funktionierendes Makro:
Das hat bisher wie gesagt ganz gut funktioniert, allerdings waren bisher nur Zahlenwerte in den Zellen des Quellbereichs. Das hat sich nun geändert, das heißt, ich habe Formeln im Quellbereich, die entweder einen Zahlenwert aus geben oder "leer" bleiben. Jetzt meine Frage, wie muss ich das Makro ändern, damit erstens nur die Zahlenwerte kopiert werden und zweitens die "leeren" Zeilen nicht mitkopiert werden?
Vielen Dank im Voraus und lieben Gruß,
Andi
Ich möchte per Makro aus einer Spalte alle Werte in eine neue Tabelle kopieren, die nicht leer sind. Dafür hab ich auch ein funktionierendes Makro:
Code: Alles auswählen
Sub NullenRausFiltern
oSheet = ThisComponent.Sheets.getByName("Daten")
sRange = "E2:E1000"
oSourceRange = oSheet.getCellRangeByName(sRange)
ThisComponent.Sheets.getByName("REFilter").getCellRangeByName("A1:B1000").clearContents(1023)
Dim oFields(0) As New com.sun.star.sheet.TableFilterField
oFields(0).Field=0
oFields(0).IsNumeric = True
oFields(0).Operator = com.sun.star.sheet.FilterOperator.NOT_EMPTY
oFilterDesc = oSourceRange.createFilterDescriptor(True)
oFilterDesc.setFilterFields(oFields())
oFilterDesc.SkipDuplicates = False
oFilterDesc.IsCaseSensitive = False
oFilterDesc.ContainsHeader = True
oFilterDesc.CopyOutputData = True
oFilterDesc.OutputPosition = ThisComponent.Sheets.getByName("REFilter").getCellRangeByName("A1").cellAddress
oSourceRange.Filter(oFilterDesc)
End Sub
Vielen Dank im Voraus und lieben Gruß,
Andi