Auswahl von Zeilen in neues Blatt kopieren



Excel-Version: 9.0 (Office 2000)
nach unten

Betrifft: Auswahl von Zeilen in neues Blatt kopieren
von: Wolfgang
Geschrieben am: 09.07.2002 - 14:04:18

Ein Gruss an die Spezialisten,

ich würde gerne aus einer Excel-Tabelle Zeilen nach bestimmten Kriterien (Text) auswählen und alle Zeilen, die mit diesem Kriterium übereinstimmen, in eine andere (bestehende) Excel-Tabelle übertragen. Da diese Funktion immer dann laufen soll, wenn man die (bestehende) Excel-Datei öffnet, muß das Blatt natürlich vorher gelöscht werden.

Gibt es da von Euch einen Lösungsvorschlag ?

Gruss aus dem heißen Büro

Wolfgang


nach oben   nach unten

Re: Auswahl von Zeilen in neues Blatt kopieren
von: Hajo_SB
Geschrieben am: 10.07.2002 - 10:07:11

Hallo Wolfgang,
vielleicht hilft Dir der Spezialfilter, der auch eine Kopie der gefilterten Daten in eine neue Tabelle ermöglicht. Du kannst diese Prozedur als Macro aufzeichnen und in die Ereignisprozedur Workbook_open kopieren. Gegebenenfalls mußt Du das Filterkriterium vorher noch abfragen.

Gruß Hajo


nach oben   nach unten

Re: Auswahl von Zeilen in neues Blatt kopieren
von: MikeS
Geschrieben am: 10.07.2002 - 10:25:14

Hallo Wolfgang,

ich habe zwei Mappen („Quellmappe.xls“ + „Zielmappe.xls“) angelegt
und diese unter Laufwerk „C:\“ abgespeichert.

In den beiden Mappen befindet sich je ein Blatt:
In „Quellmappe.xls“ das Blatt „Quelltabelle“,
in „Zielmappe.xls“ das Blatt „Zieltabelle“.

Nach dem öffnen der Mappe „Zielmappe.xls“ werden alle Einträge (ab Zeile2) gelöscht.

Dann wird im Hintergrund die „Quellmappe.xls“ geöffnet und beginnend ab Zelle A2
(in Zeile1 stehen Überschriften) abwärts geprüft, ob ein „X“ in der
jeweiligen Zelle steht.

Ist das der Fall wird die gesamte Zeile in das Blatt (in Zeile1 stehen auch Überschriften)
„Zieltabelle“ (der Mappe „Zielmappe.xls“) kopiert.

Nach Beendigung des Kopiervorgangs wird die „Quellmappe.xls“ geschlossen
und eine automatische Spaltenbreitenanpassung in der „Zieltabelle“ vorgenommen.


‚in ein Modul:

Option Explicit

Sub DatenImport()
  Dim rZeile
  Dim lZeile As Long
  Dim lqZeile As Long
  lqZeile = 2
     
  Worksheets("Zieltabelle").Activate
  Range("2:65536").Clear
  Application.ScreenUpdating = False
   
  Workbooks.Open "c:\Quellmappe.xls"
  Worksheets("Quelltabelle").Activate
  Range("A2").Select
    
  lZeile = Range("A65536").End(xlUp).Row
    
    Do Until ActiveCell.Row > lZeile
      If ActiveCell.Value = "X" Then
        rZeile = ActiveCell.EntireRow.Select
        Selection.Copy
        Workbooks("Zielmappe").Activate
        Sheets("Zieltabelle").Activate
        Cells(lqZeile, 1).Select
        lqZeile = lqZeile + 1
        ActiveCell.EntireRow.Select
        ActiveSheet.Paste
        Workbooks("Quellmappe").Activate
        ActiveCell.Offset(1, 0).Select
      Else
        Workbooks("Quellmappe").Activate
        ActiveCell.Offset(1, 0).Select
      End If
    Loop
      
  Application.DisplayAlerts = False
  ActiveWorkbook.Close savechanges:=False
  Application.DisplayAlerts = True
  Worksheets("Zieltabelle").Activate
  Range("A:IV").Columns.AutoFit
  Application.ScreenUpdating = True
End Sub


‚In Diese Arbeitsmappe:

Option Explicit

Private Sub Workbook_Open()
  Call DatenImport
End Sub

Wolltest Du es so haben???

Ciao MikeS

nach oben   nach unten

Re: Auswahl von Zeilen in neues Blatt kopieren
von: wolfgang
Geschrieben am: 10.07.2002 - 12:59:12

Hi Mike,

ja, vom Prinzip her soll es genau so laufen.

Hast Du das mal getestet ? bei mir kommen da immer wieder Fehler bezüglich der gültiges Ranges. Ich habe mir den Code mit meinem laienhaften Verständnis angesehen und glaube festgestellt zu haben, daß die bei den Namen (sheet und book) Fehler unterlaufen sind.

Kannsu Du das bitte mal checken, ich habe schon einige Versuche hinter mir, bekommen aber kein Ergebnis. By thge Way, ich arbeite mit 2000.

Nochmals Danke im voraus.

Wolfgang


 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Auswahl von Zeilen in neues Blatt kopieren"