Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1272to1276
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
Inhaltsverzeichnis

Arbeitsblatt Kopieren und D1 hochzählen

Arbeitsblatt Kopieren und D1 hochzählen
Gerd
Hallo zusammen
Folgendes: Möchte Arbeitsblatt A1 50 mal Kopieren und Zelle D1 um 1 erhöhen (Start 1)
Sub copyA1()
Dim lngIndex As Long
On Error GoTo ErrExit
Application.ScreenUpdating = False
For lngIndex = 2 To 50
Sheets("A1").Copy AFter:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "A" & lngIndex
Next
ErrExit:
Application.ScreenUpdating = True
End Sub
Dies habe ich schon aber ohne Zelle D1 erhöhen
Kann mir jemand dies aktualisieren
Vielen Dank
Gerd

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
ohne error,...
22.07.2012 00:18:41
Matze,Matthias
Hallo Gerd,
funktioniert dein Code,
Sub copyA1()
Dim lngIndex As Long
Application.ScreenUpdating = False
For lngIndex = 2 To 10 'Test
Sheets("A1").Copy AFter:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "A" & lngIndex
Next
Application.ScreenUpdating = True
End Sub
nur wenn schon Sheets vorhanden sind, wird der einen Fehler machen,da
er ja ab lngIndex 2 anfängt zu zählen und die Sheets schon da sind.
Aber Teste mal selbst,
Gruß Matze
AW: ohne error,...
22.07.2012 09:08:05
Gerd
@ Matze
Ja Dein Code funktioniert NUR was icih angesprochen habe das der Wert in D1 erhöht werden soll ist nicht berücksichtigt und darum ging es
Auch der andere Code funktioniert
Vielleich bekommen wir das mit dem Wert noch hin
Gruß
Gerd
Anzeige
muss es nicht 2 to 51 heißen ...
22.07.2012 09:41:38
Matthias
Hallo
Willst Du generell bei 1 anfangen, dann benutze doch die Variable lngIndex-1.
' ...
For lngIndex = 2 To 51
Sheets("A1").Copy AFter:=Sheets(Sheets.Count)
With Sheets(Sheets.Count)
.Name = "A" & lngIndex
.Range("D1") = lngIndex - 1
End With
Next
' ...

Oder willst Du den Wert aus Sheets("A").Range("D1") um eins erhöhen ?
Ich bin jetzt mal davon ausgegangen, des es nur das Worksheet("A1") in der Mappe gibt
Eine Fehlerroutine würde ich an Deiner Stelle aber später wieder einpflegen.
Gruß Matthias
AW: muss es nicht 2 to 51 heißen ...
22.07.2012 10:03:30
Gerd
Es gibt folgende Mappen
Adressen und A1
Die Mappe A1 soll um 20 (oder 50) erhöht werden (die Anzahl kann ich individuell erhöhen)
Also A1 A2 A3 A4 u.s.w
Der Wert in D1 soll ebenfalls um 1 erhöht werden
Also Mappe A1 in D1 =1;Mappe A2 in D1=2;Mappe A3 in D1=3
Soweit habe ich mich hoffentlich gut ausgedrückt ?
Danke für die Hilfe
Gerd
Anzeige
Der Code von Matthia L.,...
22.07.2012 10:38:22
Matthia
Hallo Gerd,
.....macht genau das was du willst, nimm nur die -1 weg dann passt das mit Zelle D1.
Option Explicit
Sub CopyA1()
Dim lngIndex As Long
Application.ScreenUpdating = False
For lngIndex = 2 To 10
Sheets("A1").Copy AFter:=Sheets(Sheets.Count)
With Sheets(Sheets.Count)
.Name = "A" & lngIndex
.Range("D1") = lngIndex
End With
Next
lngIndex = 0
Application.ScreenUpdating = True
End Sub
Gruß Matze
AW: Der Code von Matthia L.,...
22.07.2012 10:45:39
Matthia
Danke jetzt passt es
Gruß
Gerd

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige