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

Datei Speichern

Forumthread: Datei Speichern

Datei Speichern
25.09.2024 14:57:07
wkro1
Hallo,
ich bin relativ neu hier und habe noch sehr geringe VBA-Kenntnisse.

Ich bearbeite eine Datei, z.B. "Daten".
Per VBA-Befehl öffne ich in Abhängigkeit von diversen Zellinhalten z.B. Dateiname in Zelle AG3 eine andere Datei. Diese steht in einem anderen Ordner.
Nun möchte ich diese andere Datei unter dem Namen "Beispiel" in dem Ordner speichern, wo die Ausgangsdatei "Daten" gespeichert war.

Die nachfolgende Anweisung speichert zwar die Datei "Beispiel", jedoch im Ordner Documents, da dieser als Standardodner in Excel hinterlegt ist.

Private Sub CommandButton1_Click()
Workbooks.Open Range("AG3").Value
ActiveWorkbook.SaveAs Filename:="Beispiel"
End Sub

Da die Ausgangsdatei nicht immer im selben Ordner steht nutzt es mir nichts, wenn ich einen festen Ordner zum Abspeichern vorgebe. Es müsste immer genau der sein, aus dem die Ausgangsdatei geöffnet wurde.

Kann mir hier jemand weiterhelfen.
Vielen Dank im Voraus.
wkro1
Anzeige

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei Speichern
25.09.2024 15:20:01
Onur
Dann musst du erstmal den Pfad der Datei aus AG3 extrahieren und diesen beim Speichern mit angeben.
Oder Pfad und Namen in 2 Zellen separat auflisten.
AW: Datei Speichern
25.09.2024 15:28:05
Raimund
Hi wkro

Versuche es so:

Private Sub CommandButton1_Click()
Dim wb As Workbook
Dim originalPath As String

' Öffne die Arbeitsmappe
Set wb = Workbooks.Open(Range("AG3").Value)

' Hole den Pfad der geöffneten Datei
originalPath = wb.Path

' Speichere die Datei im gleichen Ordner
wb.SaveAs Filename:=originalPath & "\Beispiel.xlsx"

' Schließe die Arbeitsmappe, wenn nötig
' wb.Close
End Sub

Gruss

Anzeige
AW: Datei Speichern
25.09.2024 16:42:27
Raimund
Hi wkro

Der Script öffnet eine Excel-Arbeitsmappe, deren Pfad in der Zelle AG3 angegeben ist. Was steht bei dir in der Zelle AG3?

Heißt die Datei auch Beispiel.xlsx?


Private Sub CommandButton1_Click()
Dim wb As Workbook
Dim originalPath As String
Dim fileName As String

On Error GoTo ErrorHandler ' Fehlerbehandlung aktivieren

' Öffne die Arbeitsmappe
Set wb = Workbooks.Open(Range("AG3").Value)

' Hole den Pfad der geöffneten Datei
originalPath = wb.Path

' Überprüfe, ob der Pfad nicht leer ist
If originalPath = "" Then
MsgBox "Der Pfad der geöffneten Datei ist leer. Bitte überprüfen Sie die Datei.", vbExclamation
Exit Sub
End If

' Setze den Dateinamen
fileName = originalPath & "\Beispiel.xlsx"

' Speichere die Datei im gleichen Ordner
wb.SaveAs Filename:=fileName

' Optional: Schließe die Arbeitsmappe
' wb.Close
MsgBox "Die Datei wurde erfolgreich gespeichert als: " & fileName
Exit Sub

ErrorHandler:
MsgBox "Fehler beim Öffnen oder Speichern der Datei: " & Err.Description, vbCritical
End Sub

Gruss
Anzeige
AW: Datei Speichern
25.09.2024 17:14:36
Raimund
Hi Udo

Also so?

Private Sub CommandButton1_Click()
Dim wb As Workbook
Dim originalPath As String
Dim fileName As String

On Error GoTo ErrorHandler ' Fehlerbehandlung aktivieren

' Ermittele den Pfad aus AG3
originalPath = Left(Range("AG3").Value, InStrRev(Range("AG3").Value, "\"))

' Öffne die Arbeitsmappe (Vorlage)
Set wb = Workbooks.Open(Range("AG3").Value, editable:=True)

' Setze den neuen Dateinamen (Beispiel.xlsx)
fileName = originalPath & "Beispiel.xlsx"

' Speichere die Datei im gleichen Ordner
wb.SaveAs Filename:=fileName

' Optional: Schließe die Arbeitsmappe
' wb.Close
MsgBox "Die Datei wurde erfolgreich gespeichert als: " & fileName
Exit Sub

ErrorHandler:
MsgBox "Fehler beim Öffnen oder Speichern der Datei: " & Err.Description, vbCritical
End Sub

Gruss
Anzeige
AW: Datei Speichern
25.09.2024 18:56:14
Ulf
Hi
du meinst ~ so


Sub Schaltfläche1_Klicken()
Dim wb As Workbook
Dim strWB As String
Dim strPfad As String
Dim strName As String
Dim strVollerName As String
Set wb = ThisWorkbook
strWB = wb.Worksheets(1).Range("A1").Value ' wieder einsetzen !!!! wb.Range("AG3").Value
strName = "beispiel.xlsx"
strPfad = wb.Path
strVollerName = strPfad & "\" & strName
With Application.Workbooks.Add(strWB)
.SaveAs strVollerName
End With
End Sub

hth
Ulf
Anzeige
AW: Datei Speichern
25.09.2024 17:53:31
wkro1
Hallo,

kann es sein dass ich mich falsch ausgedrückt habe?

Ich möchte die Datei nicht in den Pfad speichern der in AG3 steht, sondern in den Pfad in dem die Datei steht die ich ganz zu Anfang geöffnet hatte.
in meinem ersten Beitrag hatte ich Sie "Daten" genannt.

Dies ist aber je nach Aufgabe immer ein andere Pfad.

Gruß
Anzeige
AW: Datei Speichern
25.09.2024 17:57:25
Onur
SCHERZKEKS !!!!
Woher sollen WIR denn wissen, WELCHE Datei du ganz am Anfang geöffnet hast, wenn du nur 4 Zeilen Code gepostet hast ????
AW: Datei Speichern
25.09.2024 22:03:47
Uduuh
Hallo,
dann, wenn der Code in daten.xlsm steht:
activeworkbook.saveas thisworkbook.path & "\beispiel.xlsx"

Gruß aus'm Pott
Udo
AW: Datei Speichern
26.09.2024 15:34:05
wkro1
Hallo Udo,

vielen Dank. Funktioniert wunderbar.

Gruß wkro1
Anzeige
AW: Datei Speichern
25.09.2024 18:22:55
wkro1
Hallo Onur,

da stand auch noch der folgende TEXT:

Ich bearbeite eine Datei, z.B. "Daten".
Per VBA-Befehl öffne ich in Abhängigkeit von diversen Zellinhalten z.B. Dateiname in Zelle AG3 eine andere Datei. Diese steht in einem anderen Ordner.
Nun möchte ich diese andere Datei unter dem Namen "Beispiel" in dem Ordner speichern, wo die Ausgangsdatei "Daten" gespeichert war.

Den SCHERZKEKS lasse ich dann mal außen vor.

Gruß wkro1
Anzeige
AW: Datei Speichern
25.09.2024 18:29:14
Onur
"Ich bearbeite eine Datei, z.B. "Daten". "
Und woher soll der Code wissen, aus welchem Verzeichnis die Datei "Daten" stammt ?
Du hast NICHT gepostet, wie diese Datei geöffnet wurde. Wird ja wohl durch Code geschehen sein.
Poste endlich mal die ganze Datei oder zumindest den GANZEN Code statt nur vier Zeilen davon.
Anzeige
AW: Datei Speichern
25.09.2024 16:52:39
wkro1
Hallo Raimund,

in AG3 steht der komplette Pfad incl. Dateiname. Die Datei heißt nicht Beispiel und liegt auf einem Serverlaufwerk.
In diesem Fall ist das eine Excel-Vorlage (.xltx).

Jetzt bekomme ich den Fehler "Der Pfad der geöffneten Datei ist leer. Bitte überprüfen Sie die Datei".

Gruß
wkro1
Anzeige
AW: Datei Speichern
25.09.2024 17:03:43
Raimund
Hi wkro1

Bei mir ohne den Server funktioniert alles ohne Probleme.

Stelle sicher, dass der Pfad in AG3 korrekt und vollständig ist (z. B. \\Server\Ordner\Datei.xltx).

Private Sub CommandButton1_Click()
Dim wb As Workbook
Dim originalPath As String
Dim fileName As String
Dim newFileName As String

On Error GoTo ErrorHandler ' Fehlerbehandlung aktivieren

' Öffne die Arbeitsmappe
Set wb = Workbooks.Open(Range("AG3").Value)

' Hole den Pfad der geöffneten Datei
originalPath = wb.Path

' Überprüfe, ob der Pfad nicht leer ist
If originalPath = "" Then
MsgBox "Der Pfad der geöffneten Datei ist leer. Bitte überprüfen Sie die Datei.", vbExclamation
Exit Sub
End If

' Setze den neuen Dateinamen (Beispiel.xlsx)
newFileName = originalPath & "\Beispiel.xlsx"

' Speichere die Datei im gleichen Ordner
wb.SaveAs Filename:=newFileName

' Optional: Schließe die Arbeitsmappe
' wb.Close
MsgBox "Die Datei wurde erfolgreich gespeichert als: " & newFileName
Exit Sub

ErrorHandler:
MsgBox "Fehler beim Öffnen oder Speichern der Datei: " & Err.Description, vbCritical
End Sub

Gruss
Anzeige
AW: Datei Speichern
25.09.2024 17:09:37
Uduuh
Hallo,
wenn du eine .xltx per Makro ohne den Parameter editable:=True öffnest, wird eine neue Mappe auf Basis der xltx erstellt. Und neue Mappen haben nun mal keinen Pfad.
Du musst also den Pfad vor dem Öffnen aus der Zelle ermitteln.
DerPfad = Left([AG3], InStrRev([AG3], "/"))


Gruß aus'm Pott
Udo
Anzeige
AW: Datei Speichern
25.09.2024 15:31:44
Onur
Wieso bin ich nicht auf die Idee gekommen ??? :)
AW: Datei Speichern
25.09.2024 16:03:16
wkro1
Hallo Raimund,

das funktioniert leider nicht.
Bricht an folgender Stelle ab:

' Speichere die Datei im gleichen Ordner
wb.SaveAs Filename:=originalPath & "\Beispiel.xlsx"

Als Fehler wird gemeldet dass der Name des Dokuments oder der Pfad nicht vorhanden sind?

Was kann ich jetzt tun?

Schon mal Danke im Voraus.
Anzeige
AW: Datei Speichern
25.09.2024 16:10:55
Eifeljoi 5
Hallo
Teste mal so: ist ungetestet von mir.
Private Sub CommandButton1_Click()

On Error GoTo ErrorHandler
Dim wb As Workbook
Dim originalPath As String
Set wb = Workbooks.Open(Range("AG3").Value)
originalPath = wb.Path
wb.SaveAs Filename:=originalPath & "\Beispiel.xlsx"
Exit Sub
ErrorHandler:
MsgBox "Fehler: " & Err.Description
End Sub
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