Ich versuche, ein Makro zu schreiben, das eine Arbeitsmappe im übergeordneten Ordner des aktuellen Verzeichnisses speichert. Die Arbeitsmappe wird derzeit in einem Ordner "interne Kopien" gespeichert und ich versuche, das Makro zum Speichern als in den übergeordneten Ordner zu erhalten. Ich bin fest, wie man den Dateipfad analysiert, um den Ordner "interne Kopien" nicht zu enthalten. Ich versuche zu vermeiden, eine Zelle zu dedizieren, um den Dateipfad zu enthalten und das als eine Variable zu deklarieren.Speichern einer Arbeitsmappe in den übergeordneten Ordner des aktuellen Unterordners
-1
A
Antwort
0
Mit dieser Funktion kann das übergeordnete Verzeichnis, wo die Arbeitsmappe erhalten, ist gespeichert in:
Function getParentFolder(ByVal strFolder)
getParentFolder = Left(strFolder, InStrRev(strFolder, "\") - 1)
End Function
Und hier ist ein Test:
Public Sub Test()
Dim pth As String, savePth as String
pth = ThisWorkbook.Path
savePth = getParentFolder(pth)
ThisWorkbook.SaveAs savePth
End Sub
ich mit einer Arbeitsmappe in C:\Test\Internal Copies
gespeichert geprüft und die Funktion gab C:\Test
zurück.
0
Da ..
auf das übergeordnete Verzeichnis verweist (zB C:\Temp\Temp1\Temp2\..\xxx.xlsx
entspricht C:\Temp\Temp1\xxx.xlsx
), könnte man so etwas schreiben:
Sub SaveInParentDirectory()
ThisWorkbook.SaveAs ThisWorkbook.Path & "\..\" & ThisWorkbook.Name
End Sub
1
Bei weitem der einfachste Weg, mit Datei- und Pfadnamen zu arbeiten ist das zu verwenden, Scripting.FileSystemObject
:
'Add a reference to Microsoft Scripting Runtime.
Sub Example()
With New Scripting.FileSystemObject
Dim parent As String
'Get the parent directory:
parent = .GetParentFolderName(ThisWorkbook.Path)
Debug.Print parent
Dim target As String
'Combine path parts:
target = .BuildPath(parent, ThisWorkbook.Name)
Debug.Print target
End With
End Sub
Dies ist immens weniger fehleranfällig als String-Funktionen mit Pfaden und Dateinamen zu bauen.
Verwandte Themen
- 1. Perl: Wie finde ich einen übergeordneten Ordner eines bekannten Unterordners?
- 2. Speichern einer neu erstellten Arbeitsmappe in einem bestimmten Ordner
- 3. Speichern einer Kopie des aktuellen Objekts
- 4. Speichern einer Excel-Arbeitsmappe C#
- 5. Checkbox von einer anderen Arbeitsmappe zur aktuellen Arbeitsmappe kopieren?
- 6. Ordner mit Ausnahme eines Unterordners in Yeoman kopieren
- 7. Der Versuch, Daten aus einer geschlossenen Arbeitsmappe in einer aktuellen Arbeitsmappe
- 8. Stapel erstellen Unterordner in übergeordneten Ordnern, einschließlich Namen des übergeordneten Ordners in den Unterordner
- 9. Wie bekomme ich den Namen des übergeordneten Ordners des aktuellen Verzeichnisses?
- 10. Batch-Datei zum Umbenennen eines Unterordners entsprechend dem Namen des Unterordners
- 11. Inhalt des Pre-Cache-Ordners und des Unterordners
- 12. Speichern des aktuellen Verzeichnisses in Zsh-Geschichte
- 13. Importieren aus dem übergeordneten Verzeichnis in die Datei des Unterordners mit __init__?
- 14. Erstellen eines Unterordners
- 15. Ordner mit FolderId abrufen, um den übergeordneten Ordner zu finden
- 16. Hängen Sie den Namen der übergeordneten Ordner und Unterordner an die Namen der mehreren Dateien an.
- 17. VBA: Kopieren von Daten aus einer anderen Arbeitsmappe basierend auf dem Zellwert der aktuellen Arbeitsmappe
- 18. PDF-Datei des aktuellen Bildschirminhalts speichern wpf
- 19. Fehler beim Zugriff auf den übergeordneten Ordner in Electron/Node.js
- 20. Automatisches Speichern spezifische Arbeitsmappe
- 21. Wie kann ich auf eine andere Arbeitsmappe durch den Inhalt einer Zelle in der aktuellen Arbeitsmappe verweisen?
- 22. Nur einen Teil des Namens des Unterordners aus Dateipfad extrahieren
- 23. Zugriff auf die Methoden und Klassen des Unterordners
- 24. Speichern Sie jedes Arbeitsblatt als neue Arbeitsmappe
- 25. Festlegen und Überprüfen des Kennworts einer Arbeitsmappe
- 26. Logbuch. Nur Protokolle des aktuellen Tages speichern
- 27. Wie bekomme ich den übergeordneten Ordner zum Ausführen des Skripts in zsh?
- 28. Nummer des aktuellen Elements im übergeordneten Array-Objekt abrufen
- 29. Speichern des statischen Browserbilds im lokalen Ordner
- 30. Dateien in übergeordneten Ordner in R bewegen