Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1408to1412
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

Excel2013: Spalten, Zeilen durchsuchen

Excel2013: Spalten, Zeilen durchsuchen
26.02.2015 08:55:31
Chris
Hallo,
ich bin ein blutiger Anfänger was Excel angeht, und ich hoffe ihr könnt mir Rat geben.
Ich habe eine Excel Datei mit mehreren Blättern. In jedem dieser Blätter soll die Spalte "A" durchsucht nach einem Muster "C-" durchsucht werden. Ist ein passender Wert gefunden, so soll in der gleichen Zeile in der Spalte "I" nach einem Wert geschaut werden. Beide Werte sollen in einem neuen Blatt jeweils in Spalte "A" und "B" gelistet werden.
Danke & Gruß,
Chris

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel2013: Spalten, Zeilen durchsuchen
26.02.2015 09:11:49
Klaus
Hi Chris,
kopiere dir diesen Code in ein frisches Modul und starte dann das Makro.
Option Explicit
Sub SucheInAllen()
Const TabelleNeu As String = "Ausgabe"      'im Blatt "Ausgabe" auflisten
Const SpalteSuch As Long = 1                'in Spalte A = 1 suchen
Const SpalteWert As Long = 9                'Werte aus Spalte I = 9 übernehmen
Const SpalteOut As Long = 1                 'Ausgabe ab Spalte A = 1
Const SucheNach As String = "C-"            'hiernach wird gesucht
Dim lZeile As Long
Dim lZeileNeu As Long
Dim myWks As Worksheet
Application.ScreenUpdating = False
If Not WksSheetExists(TabelleNeu) Then
Sheets.Add
ActiveSheet.Name = TabelleNeu
End If
For Each myWks In ActiveWorkbook.Worksheets
If Not myWks.Name = TabelleNeu Then
With Sheets(TabelleNeu)
lZeileNeu = .Cells(.Rows.Count, SpalteOut).End(xlUp).Row + 1
End With
With myWks
lZeile = .Cells(.Rows.Count, SpalteSuch).End(xlUp).Row
If .AutoFilterMode Then .Cells.AutoFilter 'Turns OFF Autofilter, if any
If .Range("A1").Value = "" Then .Range("A1") = "Filter"
.Range(.Cells(1, SpalteSuch), .Cells(lZeile, SpalteSuch)).AutoFilter 'Turns ON  _
Autofilter on given range
.Cells(1, SpalteSuch).AutoFilter Field:=1, Criteria1:="=C-*"
.Range(.Cells(2, SpalteSuch), .Cells(lZeile, SpalteSuch)).SpecialCells( _
xlCellTypeVisible).Copy
Sheets(TabelleNeu).Cells(lZeileNeu, SpalteOut).PasteSpecial xlPasteValues
.Range(.Cells(2, SpalteWert), .Cells(lZeile, SpalteWert)).SpecialCells( _
xlCellTypeVisible).Copy
Sheets(TabelleNeu).Cells(lZeileNeu, SpalteOut + 1).PasteSpecial xlPasteValues
.Cells.AutoFilter 'Turns OFF Autofilter, if any
If .Range("A1").Value = "Filter" Then .Range("A1").Value = ""
Application.CutCopyMode = False
End With
End If
Next myWks
Application.ScreenUpdating = True
End Sub
Function WksSheetExists(sSheet As String) As Boolean
Dim wks As Object
On Error Resume Next
Set wks = Sheets(sSheet)
If Not wks Is Nothing Then
WksSheetExists = True
End If
On Error GoTo 0
End Function
Grüße,
Klaus M.vdT.

Anzeige
AW: Excel2013: Spalten, Zeilen durchsuchen
26.02.2015 10:39:24
Chris
Hallo Klaus,
vielen Dank für Deine schnelle Hilfe! Ich bekomme leider nicht alle Ergebnisse zurück geliefert, das Makro bricht mit der im Bild befindlichen Meldung ab.
Viele Grüße von Chris
Userbild

AW: Excel2013: Spalten, Zeilen durchsuchen
26.02.2015 13:55:09
Klaus
Hi,
dann hast du irgendwas falsch gemacht. Ich kenne deine Tabelle nicht, bei mir lief der Code. *Zaunpfahl* unten ist ein Upload-Link!
Grüße,
Klaus M.vdT.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige