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

VDA Code zum Speichern

VDA Code zum Speichern
29.10.2020 15:07:23
Thomas
Hallo,
ich beschäftige mich nun schon seit einiger Zeit mit der Erstellung einer Excel-Tabelle. Diese soll über einen Button speichern in einen bestimmten Ordner abgelegt werden ohne dabei das Programm zu schließen (Dateiname soll aus einer Zelle bezogen werden)
Das Speichern klappt soweit auch super, nur ist es bis jetzt leider so, das die gespeicherte Datei auch immer gleich den Button und die Makros mit speichert. Beim öffnen kommt auch die Warnung, das Makros erst aktiviert müssen.
Meine Frage ist nun, wie muss ich vorgehen, damit die gespeicherte Datei weder den Button noch die Makros mit speichert? Am liebsten wäre es mir, sie würde nur einen Druckbereich der Seite speichern, jedoch unter einem bestimmten Dateinamen aus einer Zelle.
Ich bin selber blutiger Anfänger, was die ganze VBA-Geschichte angeht.
Bis jetzt sieht der Code wie folgt aus und funktioniert auch erstmal:

Sub Speichern()
Dim strDateiname As String
Dim strAntwort As String
strDateiname = Range("G6").Value & ".XLS"
ActiveWorkbook.SaveAs ("C:\Users\XXX\Desktop\Aktuelle Prüfung\" & strDateiname)
End Sub

Leider komme ich hier nicht wirklich weiter, bzw kommt dann immer eine Fehlermeldung.
Über Hilfe wäre ich sehr dankbar.
Gruß Thomas

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VDA Code zum Speichern
29.10.2020 15:19:10
Thomas
P.S. Ideal wäre es noch, wenn er nur das aktuelle Arbeitsplatt speichert und nicht die ganze Mappe.
AW: VDA Code zum Speichern
29.10.2020 15:33:44
Regina
Hi,
geh doch so vor:
- Kopieren des Arbeitsblattes, dass gespeichert werden soll in eine neue Mappe:
Worksheets("DeinBlatt").Copy
- Dann speichern der neuen Arbeitsmappe
strDateiname = Range("G6").Value & ".XLS"
ActiveWorkbook.SaveAs ("C:\Users\XXX\Desktop\Aktuelle Prüfung\" & strDateiname)
Falls der Dateiname nicht auf dem Blatt steht, das kopiert werden soll, muss die Zuweisung zu strDateiname vor dem Kopieren erfolgen.
Gruß Regina
AW: VDA Code zum Speichern
29.10.2020 19:46:40
Thomas
Hallo,
danke für den Tip, aber leider Funktioniert das so irgendwie nicht.
Ich will keine neue Arbeitsmappe erstellen. Es soll nur das aktuelle Datenblatt an einen definierten Ort speichern, ohne das ich extra noch was eingeben muss.
Zur Erläuterung meines Vorhabens:
Eine Arbeitsmappe mit 2 Datenblättern.
Das 1. Datenblatt dient nur zur Eingabe von spezifischen Daten.
Auf dem 2. Datenblatt werden weitere Daten eingeben. Auf diesem Datenblatt befindet sich auch der Button zum speichern, welche mit dem o.a. Makro bis jetzt versehen ist.
Beim speichern soll der Name aus einer Zeile aus dem 2. Datenblatt erfolgen.
Ideal wäre ohne Button und der Fehlermeldung, das das Dokument mit Makros versehen ist.
Gruß Thomas
Anzeige
AW: VDA Code zum Speichern
29.10.2020 19:54:58
Regina
... wenn Du aus einer mappe mit 2 Blättern nur ein Blatt speichern willst, geht das nur über eine neue Arbeitsmappe. Wo soll denn das Datenblatt sonst gespeichert werden.
Oder willst Du das erste Blatt löschen und dann speichern?
AW: VDA Code zum Speichern
29.10.2020 20:25:01
Thomas
Wenn ich das erste Blatt lösche und dann Speicher, bleibt die originaldatei, also die die ich gerade bearbeite, dann komplett erhalten?
Wäre auch eine Möglichkeit.
Ich kenne mich leider mit der VBA kaum aus und fange damit gerade erst an
AW: VDA Code zum Speichern
29.10.2020 20:46:48
Regina
...ja,
1. Blatt löschen
2. Datei mit SaveAs speichern
Damit hast Du dann aber auch 2 Dateien, das Ergebnis ist das gleich wie bei meinem ersten Vorschlag
Anzeige
AW: VDA Code zum Speichern
30.10.2020 07:31:21
Thomas
Guten Morgen,
ich habe das mal versucht umzusetzen und es funktioniert soweit auch ganz gut. Allerdings speichert er jetzt unter einem festen Namen und nicht wie gewünscht unter einem Namen, welchen er aus einer bestimmten Zelle beziehen soll.
Was habe ich da falsch gemacht?
Sub Speichern()
' Speichern Makro
Sheets("DGVU").Select
ActiveSheet.Buttons.Add(516, 84, 212.25, 112.5).Select
Sheets("DGVU").Copy
ActiveWindow.SmallScroll Down:=-12
ActiveSheet.Shapes.Range(Array("Button 1")).Select
Selection.Delete
Range("K2").Select
Selection.ClearContents
ActiveWindow.SmallScroll Down:=39
ChDir "C:\Users\XXX\Desktop\Aktuelle Prüfung"
strFilename = Range("G6").Value & ".XLSX"
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\XXX\Desktop\Aktuelle Prüfung\strFilename.xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
ActiveWindow.SmallScroll Down:=-15
ActiveWindow.Close
End Sub

Anzeige
AW: VDA Code zum Speichern
30.10.2020 09:01:56
peterk
Hallo

"C:\Users\XXX\Desktop\Aktuelle Prüfung\" & strFilename & ".xlsx", FileFormat:= _

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige