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

Sheet-Wechsel

Forumthread: Sheet-Wechsel

Sheet-Wechsel
12.05.2015 10:51:45
Larissa
Ich habe folgendes Problem mit dem Wechseln von Mappen innerhalb eines Workbooks:
Sub Copy()
Dim Zeile As Long
Set Ziel = ThisWorkbook
ZeileMax = Ziel.Worksheets(1).UsedRange.Rows.Count
n = 2
For Zeile = 2 To ZeileMax
If Ziel.Worksheets(1).Cells(Zeile, 3).Value Like "S-*" Then
Ziel.Worksheets(1).Range("A" & Zeile & ":H" & Zeile).Select
Selection.Copy
Ziel.Worksheets(3).Range("A" & n).Select
ActiveSheet.Paste
n = n + 1
End If
Next
End Sub

Laufzeitfehler 1004; Die Select-Methode des Range-Objektes konnte nicht ausgeführt werden.
Ich verstehe nicht, wieso der Wechsel nicht klappt. Ich markiere in Sheet1 die Zeilen und möchte sie in Zeile 3 kopieren.
Wo ist mein Denkfehler?

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Sheet-Wechsel
12.05.2015 10:54:28
Hajo_Zi
Select, Activate usw. ist in VBA zu 99,9% nicht notwendig.
Der Cursor ist kein Hund der überall rumgeführt werden muss.
Hinweise zu select usw. Hajo-Excel.de
Hinweise zu select usw. Online-Excel.de
Hinweise zu select usw. Online-Excel.de
Sub Copy()
Dim Zeile As Long
Set Ziel = ThisWorkbook
ZeileMax = Ziel.Worksheets(1).UsedRange.Rows.Count
n = 2
For Zeile = 2 To ZeileMax
If Ziel.Worksheets(1).Cells(Zeile, 3).Value Like "S-*" Then
Ziel.Worksheets(1).Range("A" & Zeile & ":H" & Zeile).Copy Ziel.Worksheets(3).Range("A" & _
n)
n = n + 1
End If
Next
End Sub

Anzeige
AW: Sheet-Wechsel
12.05.2015 11:16:04
Larissa
Vielen Dank!

AW: Sheet-Wechsel
12.05.2015 11:06:26
Rudi
Hallo,
Sub Kopieren()
Dim Zeile As Long, n As Long, ZeileMax As Long, Ziel As Workbook
Application.ScreenUpdating = False
Set Ziel = ThisWorkbook
n = 2
With Ziel.Worksheets(1)
ZeileMax = .UsedRange.Rows.Count
For Zeile = 2 To ZeileMax
If .Cells(Zeile, 3).Value Like "S-*" Then
.Cells(Zeile, 1).Resize(, 8).Copy Ziel.Worksheets(3).Cells(n, 1)
n = n + 1
End If
Next
End With
End Sub
Verwende keine VBA-Schlüsselwörter (hier: Copy) als Prozedurnamen, Variablen etc.!
Gruß
Rudi

Anzeige
AW: Sheet-Wechsel
12.05.2015 12:21:54
Daniel
Hi
der .Select-Befehl kann für Zellen immer nur auf dem aktiven Blatt ausgeführt werden.
du müsstest also erst das Blatt und dann auf dem aktiven Blatt den Zellbereich selektieren

Ziel.Activate
ActiveWorkbook.Worksheets(1).Select
ActiveSheet.Range("A" & Zeile & ":H" & Zeile).Select

direkt funktioniert es mit
Application.Goto Ziel.Worksheets(1).Range("A" & Zeile & ":H" & Zeile)
dass das Selektieren in den meisten Fällen nicht notwendig ist, wurde dir ja schonn erklärt.
Gruß Daniel
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