Anzeige
Archiv - Navigation
856to860
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
856to860
856to860
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
vba String im batch suchen
21.03.2007 13:22:00
Peter
Guten Tag,
ich benötige einen Ansatz für folgenden:
In Spalte A einer Datei möchte ich nach Strings suchen.
Dies sind ca. 350 String-Varianten. Wenn in Tabelle1 was gefunden
wurde, sollte diese Zeile in das 2.Tabellenblatt (Tabelle2) derselben
Arbeitsmappe kopiert werden und der Eintrag in Tabelle1 farblich (rot)
markiert werden.
Im Achiv fand ich leider nichts.
Schönen Gruss
Peter

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vba String im batch suchen
21.03.2007 13:42:00
Hans
Hallo Peter,
wenn sich die Suchstrings in Tabelle3 befinden:

Sub SuchenMarkieren()
Dim col As New Collection
Dim vRow As Variant
Dim iRow As Integer, iRowT As Integer
col.Add Worksheets("Tabelle1")
col.Add Worksheets("Tabelle2")
col.Add Worksheets("Tabelle3")
iRow = 1
Do Until IsEmpty(col(3).Cells(iRow, 1))
vRow = Application.Match(col(3).Cells(iRow, 1).Value, col(1).Columns(1), 0)
If Not IsError(vRow) Then
iRowT = iRowT + 1
col(2).Cells(iRowT, 1).Value = col(1).Cells(vRow, 1).Value
col(1).Cells(vRow, 1).Interior.ColorIndex = 6
End If
iRow = iRow + 1
Loop
End Sub

Gruss hans
Anzeige
AW: vba String im batch suchen
21.03.2007 13:46:00
Peter
Schönen Dank Hans!
Mach mich gleich ran.... und
gebe Rückmeldung!
Gruss
Peter
AW: vba String im batch suchen
21.03.2007 14:07:00
Peter
Hallo Hans,
läuft Prima, aber hatte vergessen zu schreiben, dass
die Strings auch Teile von Wörtern sein können.
Soll heißen, wenn hier stände: wasser eimer schwarzmeersalz
und der Suchstring wäre: meer oder Meer dann sollte die
Zeile mit schwarzmeersalz markiert werden ect.
Gruss
Peter
AW: vba String im batch suchen
21.03.2007 14:11:00
Hans
Hallo Peter,
ändere die Zeile:
Application.Match(col(3).Cells(iRow, 1).Value, col(1).Columns(1), 0)
in:
Application.Match("*" & col(3).Cells(iRow, 1).Value & "*", col(1).Columns(1), 0)
Gruss hans
Anzeige
AW: vba String im batch suchen
21.03.2007 14:14:19
Peter
Danke für die Superschnelle Hilfe.
Ihr seid ein Superteam!!!
Gruss
Peter
AW: vba String im batch suchen
21.03.2007 14:23:00
Peter
Leider nochmal ich.
Mir fiel jetzt auf, wenn Begriffe Doppelt vorkomen (Spalte A in Tabelle A)
dann wird nur einmal markiert. D. h. scheinbar stoppt der Ablauf nach dem
ersten gefunden und die Restlichen werden ignoriert.
Gruss
Peter
AW: vba String im batch suchen
21.03.2007 14:33:08
Hans
Hallo Peter,
in diesem Fall geht das nicht ganz so flott:

Sub SuchenMarkieren()
Dim col As New Collection
Dim iRowS As Integer, iRow As Integer, iRowT As Integer
col.Add Worksheets("Tabelle1")
col.Add Worksheets("Tabelle2")
col.Add Worksheets("Tabelle3")
iRow = 1
Do Until IsEmpty(col(3).Cells(iRow, 1))
iRowS = 1
Do Until IsEmpty(col(1).Cells(iRowS, 1))
If InStr(col(1).Cells(iRowS, 1).Value, col(3).Cells(iRow, 1).Value) Then
iRowT = iRowT + 1
col(2).Cells(iRowT, 1).Value = col(1).Cells(iRowS, 1).Value
col(1).Cells(iRowS, 1).Interior.ColorIndex = 6
End If
iRowS = iRowS + 1
Loop
iRow = iRow + 1
Loop
End Sub

Gruss hans
--
Vom Frager zum Antworter: https://www.herber.de/news.html
Anzeige
AW: vba String im batch suchen
21.03.2007 14:48:00
Hans
... das ist kein Wunder, wenn Du den Code zum CommandButton auskommentierst und den neuen Code nicht in diesen Rumpf einfügst.
Empfehlung: Arbeite in solchen Fällen mit der Schaltfläche aus der Formular-Symbolleiste und bringe den Code in einem Standardmodul unter.
Gruss hans
---
Fragen ist gut, antworten ist besser
AW: vba String im batch suchen
21.03.2007 15:17:59
Peter
Sorry Hans,
werde mir dies beherzigen.
Läuft auch jetzt.
Gruss
Peter
Anzeige
AW: vba String im batch suchen
22.03.2007 09:10:00
Peter
Hallo Hans,
zu meinem Anliegen von Gestern, vielleicht
noch eine Bitte:
Kann man bei dem Makro es auch so einrichten, dass
beim einem "Fund" in Tabelle 1
der entsprechende Inhalt Spalte A und Spalte B
in Tabelle 2 kopiert wird ?
Gruss
Peter
AW: vba String im batch suchen
22.03.2007 09:17:43
Hans
Hallo Peter,
ungetestet:
   col(2).Range(col(2).Cells(iRowT, 1), col(2).Cells(iRowT, 2)).Value = _
col(1).Range(col(1).Cells(iRowS, 1), col(1).Cells(iRowS, 2)).Value
Gruss hans
---
Versuch und Irrtum war gestern
Anzeige
AW: vba String im batch suchen
22.03.2007 09:27:07
Peter
Danke,
auf Anhieb richtig...
Schönen Tag noch
Gruss
Peter
AW: vba String im batch suchen
23.03.2007 09:14:16
Peter
Hallo Hans,
habe ne Bitte für o.g. Thema:
Hier nochmals Makro:

Sub SuchenMarkieren()
Dim col As New Collection
Dim iRowS As Integer, iRow As Integer, iRowT As Integer
col.Add Worksheets("Tabelle1")
col.Add Worksheets("Tabelle2")
col.Add Worksheets("Tabelle3")
iRow = 1
Do Until IsEmpty(col(3).Cells(iRow, 1))
iRowS = 1
Do Until IsEmpty(col(1).Cells(iRowS, 1))
If InStr(col(1).Cells(iRowS, 1).Value, col(3).Cells(iRow, 1).Value) Then
iRowT = iRowT + 1
col(2).Range(col(2).Cells(iRowT, 1), col(2).Cells(iRowT, 2)).Value = _
col(1).Range(col(1).Cells(iRowS, 1), col(1).Cells(iRowS, 2)).Value
col(1).Cells(iRowS, 1).Interior.ColorIndex = 6
End If
iRowS = iRowS + 1
Loop
iRow = iRow + 1
Loop
End Sub
Kann man hier was ändern, damit beim Suchen die Gross- und Kleinschreibung ingnoriert wird?
Gruss
Peter
Anzeige
AW: vba String im batch suchen
23.03.2007 09:23:00
Hans
Hallo Peter,
tausche die folgende Zeile aus:
If InStr(col(1).Cells(iRowS, 1).Value, col(3).Cells(iRow, 1).Value)
gegen:
If InStr((lCase(col(1).Cells(iRowS, 1).Value), lCase(col(3).Cells(iRow, 1).Value))
Gruss hans
---
Versuch und Irrtum war gestern
AW: vba String im batch suchen
23.03.2007 09:44:00
Peter
Hallo,
habe Zeile eingefügt. Kommt aber
ein Syntaxfehler für die Zeile:
If InStr((lCase(col(1).Cells(iRowS, 1).Value), lCase(col(3).Cells(iRow, 1).Value))
-Fehler beim Kompilieren. Syntaxfehler-
Gruss
Peter
Anzeige
AW: vba String im batch suchen
23.03.2007 09:46:27
Hans
... da hatte sich am Anfang eine Doppelklammer eingeschlichen ...
Gruss hans
AW: vba String im batch suchen
23.03.2007 09:59:00
Peter
Super und vielen Dank.
Schönes Wochenende.....
Gruss
Peter

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige