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

Forumthread: Kopie ohne Makro speichern

Kopie ohne Makro speichern
25.08.2017 11:47:05
Hartmut_M
Hallo, ich möchte gerne eine Kopie der aktuellen Datei ohne Makros speichern.
Nutze diesen Code:
Me.SaveCopyAs Filename:="I:\Telefon\" & Format(Now, "yyyymmdd_hhnn_ss_") & Environ("UserName") & ".xlsx", FileFormat:=xlOpenXMLWorkbook
Erhalte die Fehlermeldung: Fehler beim Kompilieren
Benanntes Argument nicht gefunden
Was mache ich falsch?
Gruß Hartmut
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Kopie ohne Makro speichern
25.08.2017 11:49:08
yummi
Hallo Hartmut,
nimm mal anstatt Me ThisWorkbook
Gruß
yummi
AW: Kopie ohne Makro speichern
25.08.2017 12:07:24
Hartmut_M
Hallo Yummi, da kommt die gleiche Meldung. :-(
AW: Kopie ohne Makro speichern
25.08.2017 12:09:12
yummi
dann stell mal bitte deine datei ein
Anzeige
AW: Kopie ohne Makro speichern
25.08.2017 12:08:58
Rudi
Hallo,
SaveCopyAs unterstützt das Argument 'FileFormat' nicht.
Musst du mit SaveAs machen
btw: Format(Now, "YYYYMMDD_hhmm_ss_")
Gruß
Rudi
AW: Kopie ohne Makro speichern
25.08.2017 12:21:05
Rudi
Hallo,
so sollte das gehen:
Sub SpeichernOhneMakros()
Dim vArr(), i As Integer
ReDim vArr(1 To Sheets.Count)
'Blätter sammeln
For i = 1 To Sheets.Count
vArr(i) = Sheets(i).Name
Next
Sheets(vArr).Copy   'Blätter in neues Workbook kopieren
With ActiveWorkbook 'speichern und schließen
.SaveAs _
Filename:="I:\Telefon\" & Format(Now, "YYYYMMDD_hhmmss_") & Environ("UserName"), _
FileFormat:=xlOpenXMLWorkbook
.Close
End With
End Sub

Gruß
Rudi
Anzeige
AW: Kopie ohne Makro speichern
25.08.2017 12:27:56
Hartmut_M
Hallo, vielen Dank für eure Hilfe.
Mit Rudis Tipps funktioniert es.
Gruß Hartmut
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Kopie ohne Makro speichern in Excel


Schritt-für-Schritt-Anleitung

Um eine Excel-Datei ohne Makros zu speichern, kannst Du den folgenden VBA-Code verwenden. Dieser Code kopiert die Blätter der aktuellen Arbeitsmappe in ein neues Workbook und speichert es ohne Makros ab.

  1. Öffne deine Excel-Datei.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  4. Füge den folgenden Code in das Modul ein:
Sub SpeichernOhneMakros()
    Dim vArr(), i As Integer
    ReDim vArr(1 To Sheets.Count)
    'Blätter sammeln
    For i = 1 To Sheets.Count
        vArr(i) = Sheets(i).Name
    Next
    Sheets(vArr).Copy   'Blätter in neues Workbook kopieren
    With ActiveWorkbook 'speichern und schließen
        .SaveAs _
        Filename:="I:\Telefon\" & Format(Now, "YYYYMMDD_hhmmss_") & Environ("UserName"), _
        FileFormat:=xlOpenXMLWorkbook
        .Close
    End With
End Sub
  1. Schließe den VBA-Editor und führe das Makro aus, um die Excel-Datei ohne Makros zu speichern.

Häufige Fehler und Lösungen

  • Fehlermeldung: Fehler beim Kompilieren
    Überprüfe, ob Du Me durch ThisWorkbook ersetzt hast, falls Du die Arbeitsmappe direkt ansprechen möchtest.

  • Fehlermeldung: Benanntes Argument nicht gefunden
    Der Fehler tritt auf, weil SaveCopyAs das Argument FileFormat nicht unterstützt. Verwende stattdessen SaveAs, wie im obigen Beispiel gezeigt.


Alternative Methoden

Falls Du keinen VBA-Code verwenden möchtest, kannst Du auch manuell eine Kopie der Datei ohne Makros speichern:

  1. Öffne die Excel-Datei.
  2. Klicke auf Datei > Speichern unter.
  3. Wähle den Dateityp Excel-Arbeitsmappe (*.xlsx) aus.
  4. Speichere die Datei an deinem gewünschten Ort.

Diese Methode ist einfach, hat jedoch den Nachteil, dass Du die Blätter nicht selektiv kopieren kannst.


Praktische Beispiele

Wenn Du beispielsweise eine Arbeitsmappe mit mehreren Blättern hast und nur die Blätter in einem neuen Workbook ohne Makros speichern möchtest, kannst Du den bereitgestellten Code nutzen. Der Code wird alle Blätter kopieren und die neue Datei automatisch im gewünschten Format speichern.


Tipps für Profis

  • Nutze die Format-Funktion, um das Datum und die Uhrzeit in einem benutzerfreundlichen Format zu speichern. Dies kann hilfreich sein, um zu verhindern, dass Dateien überschrieben werden.
  • Achte darauf, den Speicherort korrekt anzugeben, um sicherzustellen, dass die Datei an dem gewünschten Ort gespeichert wird.

FAQ: Häufige Fragen

1. Kann ich den Code auch für Excel 2016 verwenden?
Ja, der Code funktioniert in Excel 2016 und neueren Versionen.

2. Was mache ich, wenn ich nur bestimmte Blätter speichern möchte?
Du kannst die vArr()-Variable anpassen, um nur die gewünschten Blätter auszuwählen, bevor Du sie kopierst.

3. Ist es möglich, den Dateinamen dynamisch zu gestalten?
Ja, Du kannst die Format(Now, ...)-Funktion anpassen, um den Dateinamen nach Deinen Wünschen zu gestalten.

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