Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1324to1328
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
Mit VBA Pfad + Dateinamen auslesen und speichern
01.08.2013 15:55:18
Andreas
Hallo zusammen,
ich hab da ein triviales Problem was ich nicht gelöst bekomme.
Kurz zum Vorgehen:
Ich habe eine csv Datei mit einem Makro ausgewertet und möchte diese nun speichern.
Das Speichern soll über ein Makro geschehen.
Es soll Folgendes passieren:
1. Der Pfad der Datei auslesen.
2. Den Namen der Datei auslesen. (z.Bsp. test.csv)
3. Der Name soll geändert werden auf test.xlsx und im selben Ordner abgespeichert werden.
Für Vorschläge bin ich sehr dankbar.
Grüße
Andreas

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mit VBA Pfad + Dateinamen auslesen und speichern
01.08.2013 15:59:06
Rudi
Hallo,
Ich habe eine csv Datei mit einem Makro ausgewertet
Wie? Da gibt's mehrere Methoden.
Gruß
Rudi

AW: Mit VBA Pfad + Dateinamen auslesen und speichern
01.08.2013 16:09:53
Andreas
Hallo Rudi,
Auswertung heißt bei mir grafische Darstellung der Werte in einem Diagramm.
Also nichts Wildes.
Gruß

Code? owT
01.08.2013 16:12:07
Rudi

AW: Code? owT
01.08.2013 16:36:00
Andreas
Hallo Rudi,
willst du, dass ich den Code für die Erstellung vom Diagramm reinstelle?
Gruß
Andreas

AW: Mit VBA Pfad + Dateinamen auslesen und speichern
01.08.2013 16:08:38
Doris
Hallo Andreas,
heisst,
die Datei ist noch geöffnet und Du willst speichern. Versuchs mal so
' SAVE Excel als *.xlsx  (Version7),  deshalb FileFormat = 51
Dim tab_xlsx as string
tab_xlsx = "test.xlsx"
ActiveWorkbook.SaveAs Filename:= tab_xlsx, _
FileFormat:=51, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False

Hoffe das klappt
Gruß Doris

Anzeige
AW: Mit VBA Pfad + Dateinamen auslesen und speichern
01.08.2013 16:34:30
Andreas
Hallo Doris,
danke für die schnelle Antwort.
Die Datei wird zwar im xlsx format abgespeichert, leider aber nicht im selben Ordner.
Die Datei sollte auch nicht test.xlsx heißen sondern den ursprünglichen Namen tragen.
Ich hab mir da gedacht mit dem Befehl ThisWorkbook.Name und ThisWorkbook.Path zu arbeiten...aber wie?
Grüße
Andreas

AW: Mit VBA Pfad + Dateinamen auslesen und speichern
01.08.2013 17:21:07
Doris
Hallo Andreas,
Ich merke mir zu Beginn des Makros meinen Standort (sozusagen mein zu Hause) , also Worbook und Verzeichhnis. So kann immer dorthin zurück. Probier das Makro einfac aus.
Am besten führst Du das Makro in Einzelschritten aus. Dann siehst Du welche aktuellen Werte er einsetzt.
Sub Test_save()
' 1. aktuelles Workbook - merken für spätere aktionen
Dim currentWorkbook As String
Dim currentWorkbookDir As String
Dim Tabelle_save As String
currentWorkbook = ActiveWorkbook.Name
currentWorkbookDir = ActiveWorkbook.Path
ChDir currentWorkbookDir
' 2. Name festlegen und Speichern
Windows(currentWorkbook).Activate
Tabelle_save = "Name Deiner Wahl.xlsx"
ActiveWorkbook.SaveAs Filename:=Tabelle_save, _
FileFormat:=51, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Tchüß für heute
Doris
Morgen bin ich wieder dabei.

Anzeige
AW: Mit VBA Pfad + Dateinamen auslesen und speichern
02.08.2013 10:12:44
Andreas
Hallo Doris,
vielen Dank!!!! Es hat funktioniert.
Um den Namen der Datei zu behalten hab ich deinen Code ein wenig verändert.
Sub Test_save()
' 1. aktuelles Workbook - merken für spätere aktionen
Dim currentWorkbook As String
Dim currentWorkbookDir As String
Dim Tabelle_save As String
currentWorkbook = ActiveWorkbook.Name
currentWorkbookDir = ActiveWorkbook.Path
ChDir currentWorkbookDir
' 2. Name festlegen und Speichern
Windows(currentWorkbook).Activate
Tabelle_save = Left(currentWorkbook, Len(currentWorkbook) - 3)
Tabelle_save = Tabelle_save & "xlsx"  'Tabelle_save = "Name Deiner Wahl.xlsx"
ActiveWorkbook.SaveAs Filename:=Tabelle_save, _
FileFormat:=51, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Nochmals schönen Dank!
Grüße
Andreas

Anzeige
AW: Mit VBA Pfad + Dateinamen auslesen und speichern
02.08.2013 11:06:32
Doris
Hallo Andreas,
schön das es geklappt.
Na dann ein schönes Wochende
Doris

72 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox zum Thema

EXCEL - VBA: Pfad- und Dateinamen auslesen


Inhaltsverzeichnis

  1. Was ist VBA in Excel?
  2. Einsatzzweck
  3. Anleitung zur Umsetzung
  4. Tipps
  5. Zusammenfassung

Was ist VBA in Excel?

VBA (Visual Basic for Applications) ist die Makro-Programmiersprache von Excel. Mit VBA kannst du komplexe Automatisierungen und benutzerdefinierte Funktionen in Excel erstellen.


Einsatzzweck

VBA ermöglicht die Automatisierung von sich wiederholenden oder komplexen Aufgaben in Excel, wie z.B. das automatische Umbenennen und Speichern von Dateien basierend auf bestimmten Kriterien.


Anleitung zur Umsetzung

  1. Öffne Excel und die betreffende Datei.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Rechtsklick auf den Namen deines Arbeitsblatts (z.B. "Tabelle1") im Projektfenster und wähle "Einfügen" > "Modul".
  4. Kopiere und füge den folgenden VBA-Code in das Modulfenster:
Sub SaveAsXLSX()

    Dim OriginalPath As String
    Dim NewPath As String
    Dim NewName As String

    ' Pfad und Namen der aktuellen Datei auslesen
    OriginalPath = ThisWorkbook.Path
    OriginalName = ThisWorkbook.Name

    ' ".csv" aus dem Dateinamen entfernen und ".xlsx" hinzufügen
    NewName = Replace(OriginalName, ".csv", ".xlsx")

    ' Neuen Pfad erstellen
    NewPath = OriginalPath & "\" & NewName

    ' Aktuelle Arbeitsmappe als .xlsx-Datei speichern
    ThisWorkbook.SaveAs Filename:=NewPath, FileFormat:=xlOpenXMLWorkbook

End Sub
  1. Schließe den VBA-Editor und gehe zurück zu Excel.
  2. Führe das Makro aus, indem du ALT + F8 drückst, das Makro "SaveAsXLSX" auswählst und auf "Ausführen" klickst.

Tipps

  • Achte darauf, dass Makros in deiner Excel-Datei aktiviert sind, damit der VBA-Code funktioniert.
  • Stelle sicher, dass die ursprüngliche Datei nicht schreibgeschützt ist.
  • Erstelle vor der Ausführung des Makros immer eine Sicherungskopie deiner Excel-Datei.

Zusammenfassung

VBA bietet in Excel mächtige Automatisierungsmöglichkeiten. Mit dem oben genannten VBA-Code kannst du die aktuelle CSV-Datei automatisch als XLSX-Datei im gleichen Ordner speichern. Es ist jedoch wichtig, VBA-Code mit Vorsicht zu verwenden und stets Sicherungskopien deiner Dateien zu erstellen.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige