Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1252to1256
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

keine Formeln kopieren

keine Formeln kopieren
Snewi
Hallo,
über folgenden Syntax speicher ich ein Excel Blatt!

Sub Blatt_ablegen()
Sheets("Gesamt_1").Copy
ActiveWorkbook.SaveAs "T:\Gesamt_1\2012\Gesamt_1_" _
& Format(DateSerial(Year(Date), Month(Date), 0), "MMYY")
End Sub

Hier werden nur alle Formeln mit gespeichert! Wie kann ich alles kopieren nur ohne Formeln?
Und was ist wenn ich mehrere Blätter gleichzeitig kopieren möchte?
wenn ich ausser Gesamt_1 noch 2 + 3+ 4 hätte? Und jedes mal soll eine eigene Excel Datei erstellt werden?
gruß
AW: keine Formeln kopieren
01.03.2012 15:25:26
Rudi
Hallo,
Sub Blatt_ablegen()
Dim i As Integer
For i = 1 To 4
Sheets("Gesamt_" & i).Copy
Cells.Copy
Cells(1, 1).PasteSpecial xlPasteValues
ActiveWorkbook.SaveAs "T:\Gesamt_" & i & "\2012\Gesamt_" & i & "_" _
& Format(DateSerial(Year(Date), Month(Date), 0), "MMYY")
Next
End Sub

Gruß
Rudi
AW: keine Formeln kopieren
01.03.2012 18:12:35
Snewi
Und wie würde das ganze aussehen, wenn der Name unterschiedlich ist!
Sollte ich dann nur aus die Position schauen ?
Also
Worksheets (i) ? Würde das klappen?
Gruß
AW: keine Formeln kopieren
01.03.2012 18:14:47
Snewi
Ach der Name der Kopie müsste dann natürlich trotzdem nach dem original heißen + dem Datum:-)
Gruss
Anzeige
AW: keine Formeln kopieren
01.03.2012 22:33:17
Rudi
Hallo,
dann arbeite mit Worksheets(i) und Worksheet(i).Name
Gruß
Rudi
AW: keine Formeln kopieren
02.03.2012 08:03:50
Snewi
Meinst du so?
weil irgendwie kommt hier immer ein Fehler :-(
Sub Blatt_ablegen_alle()
Dim i As Integer
For i = 1 To 4
Worksheets(i).Copy
Cells.Copy
Cells(1, 1).PasteSpecial xlPasteValues
ActiveWorkbook.SaveAs "T:\2012\Worksheet(i).Name " _
& Format(DateSerial(Year(Date), Month(Date), 0), "MMYY")
Next
End Sub
gruß
AW: keine Formeln kopieren
02.03.2012 09:44:20
Rudi
Hallo,
ne, so:
Sub Blatt_ablegen_alle()
Dim i As Integer
For i = 1 To 4
Worksheets(i).Copy
Cells.Copy
Cells(1, 1).PasteSpecial xlPasteValues
ActiveWorkbook.SaveAs "T:\2012\" & Worksheets(i).Name _
& "_" & Format(DateSerial(Year(Date), Month(Date), 0), "MMYY")
Next
End Sub

Gruß
Rudi
Anzeige
AW: keine Formeln kopieren
02.03.2012 10:00:24
Snewi
mhh der sagt mir immer Index ausserhalb des gültigen Bereichs bei der Zeile Worksheets(i).copy
Gruß
AW: keine Formeln kopieren
02.03.2012 10:26:13
Tino
Hallo,
Du hast sehr wahrscheinlich ein Diagramm an irgendeiner Stelle stehen.
Vorschlag von mir, verwende in einem Array den Objektnamen der Tabelle.
Diesen findest Du im VBA im Projekt Explorer, der Name der nicht in Klammern steht.
Vorteil du kannst den Registernamen ändern und die Position und der Code verarbeitet immer noch die richtige Tabelle.
Userbild
Beispiel Code:
Sub Blatt_ablegen_alle()
Dim i As Integer, ArrayTabelle(), varTab

ArrayTabelle = Array(Tabelle1, Tabelle2, Tabelle5, Tabelle6)
For Each varTab In ArrayTabelle
    varTab.Copy
    
    ActiveWorkbook.ActiveSheet.UsedRange.Value = ActiveWorkbook.ActiveSheet.UsedRange.Value
    
    ActiveWorkbook.SaveAs "T:\2012\" & Worksheets(i).Name _
     & "_" & Format(DateSerial(Year(Date), Month(Date), 0), "MMYY")
Next
End Sub
Gruß Tino
Anzeige
AW: keine Formeln kopieren
02.03.2012 11:59:23
Snewi
klappt super nur eine Frage noch wenn das Datum aus der Zelle J8 mit dem Format MMYY hinten an den Namen gehängt werden soll, wie sieht dann der Syntax aus?
Gruß
AW: keine Formeln kopieren
02.03.2012 12:14:00
Tino
Hallo,
ungetestet, müsste aber es so gehen.
Sub Blatt_ablegen_alle()
Dim ArrayTabelle(), varTab
ArrayTabelle = Array(Tabelle1, Tabelle2, Tabelle5, Tabelle6)
For Each varTab In ArrayTabelle
varTab.Copy
With ActiveWorkbook.ActiveSheet
.UsedRange.Value = .UsedRange.Value
ActiveWorkbook.SaveAs "T:\2012\" & .Name _
& "_" & Format(DateSerial(Year(.Range("J8")), Month(.Range("J8")), 0), "MMYY")
End With
Next
End Sub
Gruß Tino
Anzeige
AW: keine Formeln kopieren
02.03.2012 12:27:39
Snewi
Excel sagt Variable nicht deklariert bei dem was in den Klammern steht :-(
ArrayTabelle = Array(Tabelle1)
AW: keine Formeln kopieren
02.03.2012 12:34:15
Tino
Hallo,
evtl. kannst Du noch das Format der Ursprungsdatei verwenden.
ActiveWorkbook.SaveAs "G:\1 Forum\" & .Name _
& "_" & Format(DateSerial(Year(.Range("J8")), Month(.Range("J8")), 0), "MMYY"), _
FileFormat:=ThisWorkbook.FileFormat
Gruß Tino
Anzeige
AW: keine Formeln kopieren
02.03.2012 12:36:12
Snewi
.Range macht er nicht muss ihm das Sheet angeben!
Ebenfalls steht in J8 Februar 2012 und er macht Dateiname_0112 daraus warum?
Gruß
AW: keine Formeln kopieren
02.03.2012 12:47:28
Tino
Hallo,
In J8 steht ja schon ein Datum.
mach mal aus
Format(DateSerial(Year(.Range("J8")), Month(.Range("J8")), 0), "MMYY")
dies
Format(.Range("J8"), "MMYY")
Gruß Tino
AW: hier die Beispieldatei
02.03.2012 13:10:45
Snewi
So gehts suuuuper :-)
nur einen Fehler nbekomme ich noch wenn ich in dem Array nur eine Tabelle angebe!
Dann sagt der immer Variable nicht deklariert :-(
gruß
Anzeige
AW: hier die Beispieldatei
02.03.2012 13:49:39
Tino
Hallo,
im Bsp. ist doch nur eine Tabelle im Array.
Bin jetzt nicht mehr am PC, schreibe von unterwegs.
Gruß Tino

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige