Home Office-Hilfe.com - Wir lösen Ihr Problem mit Microsoft Excel, Word, Outlook, PowerPoint, Access gratis Forum Impressum

 [Excel 2003] Bestimmte Zeilen übertragen und löschen
Neues Thema eröffnenNeue Antwort erstellen
Autor Nachricht
Werner72
Newbie
Newbie


Anmeldedatum: 03.10.2007
Beiträge: 5

BeitragVerfasst am: 21.03.2008, 17:38 Nach oben

Hallo,

jetzt habe ich auch mal wieder ein Problem:

Ich möchte alle Zeilen, die in Spalte A mit "C" gekennzeichnet sind, in ein anderes Tabellenblatt übertragen.

Folgendes Makro verwende ich hierfür:

Code:
Sub SätzeAufAnderesTabellenblattÜbertragen1()
Dim i As Integer
Dim iAnz As Integer
Dim x As Integer
 Application.ScreenUpdating = False
 Sheets(1).Activate
 Range("A2").Select
 iAnz = 0
 i = 0

 Do Until i = ActiveSheet.UsedRange.Rows.Count
  If ActiveCell.Value = "C" Then
     Selection.EntireRow.Copy
     Sheets(2).Select
     x = Sheets(2).Range("a65536").End(xlUp).Row
     Sheets(2).Cells(x + 1, 1).Select
     ActiveSheet.Paste
     ActiveCell.Offset(1, 0).Select
     Sheets(1).Select
     Selection.EntireRow.Delete
     iAnz = iAnz + 1
     Else
     ActiveCell.Offset(1, 0).Select
   End If
   i = i + 1
 Loop
 Application.CutCopyMode = False
 Application.ScreenUpdating = True
 MsgBox "Es wurden " & iAnz & " Sätze übertragen"
End Sub


Manchmal überträgt er wie erwünscht alle Zeilen, manchmal aber nur einige und ab und zu gibt er mir einen Laufzeitfehler.

Wo ist der Fehler?
Zum besseren Verständnis habe ich die Datei mal angehängt.

Gruß, Werner


Zeilenkopierenundloeschen2.xls
 Beschreibung:

Download
 Dateiname:  Zeilenkopierenundloeschen2.xls
 Dateigröße:  27.5 KB
 Heruntergeladen:  17 mal

Benutzer-Profile anzeigenPrivate Nachricht senden
schatzi
Moderator
Moderator


Anmeldedatum: 09.12.2006
Beiträge: 4850

BeitragVerfasst am: 22.03.2008, 19:00 Nach oben

Hallo!

Durch das Löschen der Zeilen verschiebt sich immer wieder der Zeilenindex.
Arbeite in solchen Fällen am besten immer von UNTEN nach OBEN.
Die Anweisung "Select" ist in 99% aller Fälle überflüssig!
Code:
Sub SätzeAufAnderesTabellenblattÜbertragen1()
Dim i As Integer
Dim iAnz As Integer
Dim x As Integer
 Application.ScreenUpdating = False
 iAnz = 0
 With Sheets(1)
 i = .UsedRange.Rows.Count   '<--- fängt unten an
 Do Until i = 1
  If .Cells(i, 1).Value = "C" Then
     .Rows(i).Copy Sheets(2).Cells(Sheets(2).Range("A65536").End(xlUp).Row + 1, 1)
     .Rows(i).Delete
     iAnz = iAnz + 1
  End If
  i = i - 1   '<--- arbeitet nach oben
 Loop
 Application.CutCopyMode = False
 Application.ScreenUpdating = True
 MsgBox "Es wurden " & iAnz & " Sätze übertragen"
 End With
End Sub

_________________

Viele Grüße vom Schatzi

------------------------
Dies ist meine Signatur und sie trägt eigentlich nichts zur Lösung deines Problems bei. Sollte sie es dennoch tun, dann bist du definitiv im falschen Forum...Image
Ein Feedback zum ursprünglichen Problem wäre trotzdem nett!
Windows XP, Office2000, Office2007
Benutzer-Profile anzeigenPrivate Nachricht senden
Werner72
Newbie
Newbie


Anmeldedatum: 03.10.2007
Beiträge: 5

BeitragVerfasst am: 22.03.2008, 21:10 Nach oben

Hallo Schatzi,

perfekt, es funktioniert Very Happy .
Toll wie schnell einem hier geholfen wird und ganz nebenbei lernt man noch eine Menge dazu !!!

Vielen Dank und frohe Ostern.

Gruß, Werner
Benutzer-Profile anzeigenPrivate Nachricht senden
Beiträge der letzten Zeit anzeigen:      
Neues Thema eröffnenNeue Antwort erstellen


Ähnliche Beiträge
Thema Autor Forum Antworten Verfasst am
Keine neuen Beiträge Zeilen automatisch ausblenden. tatjana89 Microsoft Excel Hilfe 3 04.07.2008, 10:20 Letzten Beitrag anzeigen
Keine neuen Beiträge bestimmter teil innerhalb einer zelle... ponte Microsoft Excel Hilfe 2 02.07.2008, 14:13 Letzten Beitrag anzeigen
Keine neuen Beiträge VBA - mit Sverweis Zeile markieren un... Simon Microsoft Excel Hilfe 3 01.07.2008, 21:50 Letzten Beitrag anzeigen
Keine neuen Beiträge VBA Hintergrundfarbe ändern wenn best... Posaune Microsoft Excel Hilfe 7 01.07.2008, 21:09 Letzten Beitrag anzeigen
Keine neuen Beiträge Anzeige mehrerer Zeilen beim Autofilter jesalom Microsoft Excel Hilfe 3 30.06.2008, 17:15 Letzten Beitrag anzeigen


 Gehe zu:   



Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen

Haftungsausschluss/Disclaimer


SMS kostenlos versenden | Battle-Dream | Tuning Forum | Join the YoungGeneration | krankenversicherungsvergleich | Kalorienarme Rezepte!
Versicherungsvergleich | Bürobedarf | Papier | Betten

Ranking-Hits



Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Alle Zeiten sind GMT + 1 Stunde
Deutsche Übersetzung von phpBB.de