Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1616to1620
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Range.Find mit mehreren Wörtern

Range.Find mit mehreren Wörtern
28.03.2018 13:25:43
Maxi
Hallo,
ich suche mit folgendem Code nach einem Wort und lösche dan die gesamte Spalte in der das Wort vorkommt:
Dim Such
Set Such = ActiveSheet.Range("A3:FJ3").Find("MeinWort")
If Not Such Is Nothing Then Such.EntireColumn.Delete

Ich will nun genau das gleiche für 40 weitere Wörter machen. Statt den selben Code 40 mal zu kopieren suche ich nach einer alternative.
Am besten wäre natürlich sowas wie: .Find("MeinWort" OR "MeinZweitesWort OR ""DrittesWort" OR ... OR "MeinLetztesWort")
Habt ihr irgendwelche Ideen?
Danke im Voraus.

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

Betreff
Datum
Anwender
Anzeige
AW: Range.Find mit mehreren Wörtern
28.03.2018 13:47:12
Daniel
HI
1. hinterlege die 40 Suchbegriffe in einem eingenen Tabellenblatt in einer freien Spalte (TabelleX!A:A)
2. kennzeichen per formel die entsprechenden Spalten, deren Text in dieser Liste vorkommt (ZählenWenn) und lösche dann die so gekennzeichneten Spalten (Inhalte auswählen)
sieht als Code so aus, der Code suchst sich automatisch die erste Freie Zeile am Tabellenende:
With ActiveSheet.Usedrange
With .Rows(.Rows.Count, 1)
.FormulaR1C1 = "=IF(CountIf(TabelleX!C1,R3C),1,"""")"
if Worksheetfunction.Sum(.Cells) > 0 then
.SpecialCells(xlcelltypeformulas, 1).EntireColumn.delete
end if
.ClearContents
end with
End with
Gruß Daniel
Anzeige
AW: Range.Find mit mehreren Wörtern
28.03.2018 15:04:37
Maxi
Cool danke dir sehr.
AW: Range.Find mit mehreren Wörtern
28.03.2018 15:06:13
Maxi
Cool danke dir sehr.
AW: Range.Find mit mehreren Wörtern
28.03.2018 13:48:13
Peter(silie)
Hallo,
array + schleife.
Option Explicit
Sub test()
Dim sValue() As Variant
Dim i As Long
Dim such As Range
ReDim sValue(1 To 40)
sValue(1) = "1"
sValue(2) = "2"
'... und so weiter
For i = LBound(sValue) To UBound(sValue)
Set such = ActiveSheet.Range("A3:FJ3").Find(sValue(i))
If Not such Is Nothing Then such.EntireColumn.Delete
Next i
End Sub

AW: Range.Find mit mehreren Wörtern
28.03.2018 15:49:56
Maxi
Danke dir sehr.

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige