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

Next For Schleife

Forumthread: Next For Schleife

Next For Schleife
11.05.2006 11:24:45
Helen
Hallo
ich würde gerne eine Schleife basteln, die folgendes tut: Aus jedem Blatt - mit Ausnahme der Blätter "Maske", "Bilanz" und "Investitionsplan" - in der aktiven Arbeitsmappe (Anzahl und Namen sind unbekannt), soll ein bestimmter Bereich kopiert und in ein Blatt ("Bilanz") in die erste freie Zeile kopiert werden.
Das Programm soll einmal alle Blätter durchgehen und dann stoppen. Irgendwie klappt es nicht und ich weiss nicht, wo der Wurm liegt.
Danke und lg
Helen

Sub AktualisierungBilanz()
Dim neuBlatt As Worksheet
Dim rngSuchzelle As Range
Sheets("Bilanz").Select   'Start auf diesem Blatt
For Each neuBlatt In Worksheets
neuBlatt.Select
If ActiveSheet.Name = "Maske" Then Next neuBlatt  'nächstes Blatt nehmen, da hier nichts kopiert werden soll
If ActiveSheet.Name = "Investitionsplan" Then Next neuBlatt 'dito "Maske"
If ActiveSheet.Name = "Bilanz" Then Exit For 'Ist als Endpunkt gedacht, d.h. wenn das Programm wieder hier ist, soll es aus der Schlaufe aussteigen
Else
ActiveSheet.Range("B33:CY62").Select   'Kopierbereich
Selection.Copy
Sheets("Bilanz").Select
Set rngSuchzelle = ThisWorkbook.Worksheets("Bilanz").Range("B:B"). _
Find("", after:=[B6])
rngSuchzelle.Select
ActiveSheet.Cells(ActiveCell.Row, ActiveCell.Column).Select    'Suche und Aktivierung der ersten freien Zeile
ActiveSheet.Paste Link:=True
Application.CutCopyMode = False
Next neuBlatt
Sheets("Bilanz").Select
Range("B1").Select
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Next For Schleife
11.05.2006 11:32:53
u_
Hallo,
versuch das mal:

Sub AktualisierungBilanz()
Dim neuBlatt As Worksheet
Dim rngSuchzelle As Range
Sheets("Bilanz").Select
Range("B1").Select
For Each neuBlatt In Worksheets
Select Case neuBlatt.Name
Case "Maske", "Investitionsplan", "Bilanz"
'Nix passiert
Case Else
With ThisWorkbook.Worksheets("Bilanz")
Set rngSuchzelle = .Range("B:B").Find("", after:=.Range("B6"))
End With
neuBlatt.Range("B33:CY62").Copy rngSuchzelle
Application.CutCopyMode = False
Set rngSuchzelle = Nothing
End Select
Next neuBlatt
End Sub
Gruß
Geist ist geil!
(Dies ist ein allgemeines Statement und nicht an bestimmte Personen gerichtet.)
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