Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Suchbegritt nicht in Spalte A

Forumthread: Suchbegritt nicht in Spalte A

Suchbegritt nicht in Spalte A
11.10.2021 20:34:20
Hubert
Hallo, ich benutze folgendes Makro für eine umfangreiche Tabelle um Daten zu suchen, auszulesen und in ein neues Tabellenblatt einzufügen (habe ich hier im Forum gefunden). Das funktioniert sehr gut, aber: wie muss ich das Makro verändern wenn sich der zu suchende Begriff nicht in Spalte A sondern in Spalte F befindet?

Sub FindenUndKopieren()
Dim iRowS As Integer, iRowT As Integer
Dim sWord As String
sWord = InputBox( _
prompt:="Suchbegriff:", _
Default:="Zeile 3 - Spalte 1")
If sWord = "" Then Exit Sub
iRowS = 1
iRowT = 1
With Worksheets("Tabelle2")
Do Until IsEmpty(Cells(iRowS, 1))
If Cells(iRowS, 1) = sWord Then
Rows(iRowS).Copy .Rows(iRowT)
iRowT = iRowT + 1
End If
iRowS = iRowS + 1
Loop
.Columns.AutoFit
.Select
End With
End Sub
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchbegritt nicht in Spalte A
11.10.2021 20:36:46
Hajo_Zi
If Cells(iRowS, 2) = sWord Then
GrußformelHomepage
In diesem Forum bekomme ich kein Mailbenachrichtigung, weitere Antworten sind zufällig.
Anzeige
richtige Spalte
11.10.2021 20:56:35
Hajo_Zi
If Cells(iRowS, 6) = sWord Then
Gruß Hajo
AW: Suchbegritt nicht in Spalte A
12.10.2021 07:03:29
Hubert
Super, vielen Dank, klappt !
Cells(iRowS, "F") und nicht 1 owt
11.10.2021 20:54:40
ralf_b
Anzeige
AW: Suchbegritt nicht in Spalte A
11.10.2021 23:04:49
Werner
Hallo,
das würde ich mit dem Autofilter machen. Was langsameres als Daten zeilenweise zu kopieren gibt es nicht.
Wenn nicht schon vorhanden, dann in Zeile 1 deiner "Suchdaten" eine Überschriftenzeile einfügen.

Sub FindenUndKopieren()
Dim sWord As String
sWord = InputBox(prompt:="Suchbegriff:", _
Default:="Zeile 3 - Spalte 1")
Application.ScreenUpdating = False
If Not sWord = vbNullString Then
With Worksheets("Tabelle2")
If WorksheetFunction.CountIf(.Columns("F"), sWord) > 0 Then
.Range("A1").AutoFilter field:=6, Criteria1:=sWord
With .AutoFilter.Range
.Offset(1).Resize(.Rows.Count - 1).Copy Range("A1")
End With
Else
MsgBox "Suchbegriff wurde nicht gefunden."
End If
.Range("A1").AutoFilter
End With
End If
End Sub
Gruß Werner
Anzeige
sehe gerade....
11.10.2021 23:11:50
Werner
Hallo,
...dass ja wohl deine "Tabelle" das Zielblatt ist. Den Namen deines "Quellblattes" mußt du im Code noch ändern.

Sub FindenUndKopieren()
Dim sWord As String
sWord = InputBox(prompt:="Suchbegriff:", _
Default:="Zeile 3 - Spalte 1")
Application.ScreenUpdating = False
If Not sWord = vbNullString Then
'Blattname anpassen
With Worksheets("Name_des_Datenblattes")
If WorksheetFunction.CountIf(.Columns("F"), sWord) > 0 Then
.Range("A1").AutoFilter field:=6, Criteria1:=sWord
With .AutoFilter.Range
.Offset(1).Resize(.Rows.Count - 1).Copy Worksheets("Tabelle2").Range("A1")
End With
Else
MsgBox "Suchbegriff wurde nicht gefunden."
End If
.Range("A1").AutoFilter
Worksheets("Tabelle2").Columns.AutoFit
End With
End If
End Sub
Gruß Werner
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige