Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
452to456
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
452to456
452to456
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Benötige Makro

Benötige Makro
13.07.2004 10:40:17
Marcel
Hallo zusammen
ich habe ein kleines Problem:
ich hab eine Excel Tabelle!In Spalte B stehen verschiedene Wörter
Ich benötige jetzt ein Mekro, welches mir alle zeilen in denen im Spalte B zum Beispiel "closed" steht in ein neues Excelblatt kopiert.
Kann mir da jemand helfen?
Danke

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Benötige Makro
13.07.2004 10:55:31
Mac4
Hallo Marcel,
hier mal eine kleine Hilfe:
Folgendes Makro kopiert alle Zeilen, in denen in Spalte B "closed" gefunden wurde, untereinander in das Blatt "Tabelle2".

Sub test()
Dim zl, i
For i = 1 To [B65536].End(xlUp).Row
If Cells(i, 2) = "closed" Then
zl = zl + 1
Rows(i).Copy Destination:=Sheets("Tabelle2").Cells(zl, 1)
End If
Next
End Sub

Marc (aus Köln)
AW: Benötige Makro
13.07.2004 10:58:07
Philipp
Hi Marcel!
Versuch´s doch einfach mal mit einem Autofilter, damit
dürfte es am einfachsten gehen...

Sub Makro(Kopieren)
Sheets("Tabelle1").Select
Range("A:D").Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:="closed"
Rows("2:200").Select
Selection.Copy
Sheets("Tabelle2").Select
Range("A2").Select
ActiveSheet.Paste
End Sub

Müssen die kopierten Zeilen an andere angehängt werden im neuen Excelblatt?
Und im alten gelöscht werden?
Wenn ja, muß hier noch einiges geändert werden, wenn nicht müßte es so hinhauen...
Gruß
Philipp
Anzeige
AW: Benötige Makro
13.07.2004 11:41:07
Marcel
Danke euch beiden!
Funktioniert einwandfrei!!
AW: Benötige Makro
dd
Hallo, hier noch etwas fuer Dich :-)
Am Anfang muss man den Bereich auswaehlen, wo man suchen wird und in den InputBox muss man dann die gesuchte Kette eingeben. Gruss dd
Option Explicit
Public

Sub ZeilenKopieren_MitKriteria()
Dim DurchgesuchterBereich
Dim Zelle
Dim vntKriteria
Dim TabelleKopiertenZeilen
Dim Gefunden
Dim Zeile
Dim SheetNummer
Dim NeuerTabellenName
Const SHNAME As String = "Ergebnis"
On Error GoTo Err_In_ZeilenKopieren_MitKriteria
If (VBA.TypeName(Application.Selection) <> "Range") Then MsgBox "Zellen auswaehlen!", vbExclamation: End
Set DurchgesuchterBereich = Application.Selection
vntKriteria = Application.InputBox("Kriteria eingeben (z.B. ""closed"")", "Kriteria")
If (VBA.VarType(vntKriteria) <> vbString) Then End
If (VBA.CStr(vntKriteria) = "") Then MsgBox "Empty String, End.", vbInformation: End
Set TabelleKopiertenZeilen = ThisWorkbook.Worksheets.Add
NeuerTabellenName = SHNAME
TabelleKopiertenZeilen.Name = NeuerTabellenName
Gefunden = False
Zeile = 0
SheetNummer = 0
For Each Zelle In DurchgesuchterBereich.Cells
If (VBA.CStr(Zelle.Value) = VBA.CStr(vntKriteria)) Then
Gefunden = True
Zeile = Zeile + 1
Zelle.EntireRow.Copy TabelleKopiertenZeilen.Cells(Zeile, 1)
End If
Next Zelle
If (Gefunden = False) Then
Application.DisplayAlerts = False
TabelleKopiertenZeilen.Delete
Application.DisplayAlerts = True
End If
Exit Sub
Err_In_ZeilenKopieren_MitKriteria:
If (Err.Number = 1004) Then
Dim sh
SheetNummer = SheetNummer + 1
For Each sh In ThisWorkbook.Worksheets
If (sh.Name = NeuerTabellenName) Then
NeuerTabellenName = SHNAME & "_" & VBA.CStr(SheetNummer)
Resume
End If
Next sh
Else
MsgBox "Error : " & Err.Number, vbCritical
End If
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige