Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: xlsm-Datei via Makro in anderer Datei öffnen

xlsm-Datei via Makro in anderer Datei öffnen
Andrea
Hallo zusammen
Wir arbeiten bei uns mit verschiedenen Excel-Versionen (Office2000 und Office2007). Nun sollte ich via Makro diverse Excel-Dateien (xls, xlsm) öffnen, darin ein Makro starten und diese dann wieder schliessen. Ich habe es mit dem untenstehenden Code geschafft, die xls-Dateien zu öffnen. Bei den xlsm-Dateien erhalte ich jedoch den Fehler, dass die Datei nicht gefunden würde, egal ob ich in Office 2007 oder 2000 arbeite. Hat jemand von euch eine Idee, ob das überhaupt und wenn ja, wie dies via Makro möglich ist? Ich habe in der Tabelle1 in der Spalte 1 den Pfad inkl. Dateinamen gespeichert, in der Spalte 2 den Dateinamen inkl. Endung.
Ich wäre euch sehr dankbar für eine Lösung. Vielen Dank im voraus.
Herzliche Grüsse
Andrea
Sub übertragen()
Dim ZzPfad, SpPfad, ZZDatei, SPDAtei As Integer
Dim DatName, PfadName As Variant
ZzPfad = 1
SpPfad = 1
ZZDatei = 1
SPDAtei = 2
Tabelle1.Activate
Do While Cells(ZzPfad, SpPfad)  ""
PfadName = Cells(ZzPfad, SpPfad)
DatName = Cells(ZZDatei, SPDAtei)
'öffnet die Datei und führt darin das Makro "Daten speichern" aus
Workbooks.Open filename:=PfadName
Application.Run DatName & "!Daten_speichern"
ActiveWorkbook.Save
ActiveWindow.Close
ZzPfad = ZzPfad + 1
ZZDatei = ZZDatei + 1
Loop
End Sub

Anzeige
AW: xlsm-Datei via Makro in anderer Datei öffnen
25.05.2011 15:22:15
Tino
Hallo,
mir fällt auf, bei …Run fehlen Hochkommas,
dass kann bei Dateien die Leerzeichen im Namen haben zu Problemen führen.
Application.Run "'" & DatName & "'!Daten_speichern"
Das es aber beim öffnen Probleme gibt weil die Datei nicht gefunden wurde
kann ich nicht nachvollziehen.
Gruß Tino
Anzeige
AW: xlsm-Datei via Makro in anderer Datei öffnen
25.05.2011 16:03:18
Andrea
Hallo Tino
Das hat leider nicht zum Erfolg geführt.
Andrea
AW: xlsm-Datei via Makro in anderer Datei öffnen
25.05.2011 16:47:28
Tino
Hallo,
stimmt der Dateiname.
Was bekommst Du ausgegeben wenn Du
vor der Zeile Workbooks.Open diese Zeile eingibst?
MsgBox Dir(PfadName, vbNormal) ""
Gruß Tino
AW: xlsm-Datei via Makro in anderer Datei öffnen
26.05.2011 07:54:05
Andrea
Hallo Tino
Da kommt ein "Wahr". Wieso meinst du?
Gruss Andrea
Anzeige
AW: xlsm-Datei via Makro in anderer Datei öffnen
26.05.2011 07:55:33
Andrea
Sorry, nochmals ich. Es kommt nur bei den Dateien mit der xls-Endung ein "Wahr". Bei derjenigen, wo's nicht funktioniert kommt "falsch"!
AW: xlsm-Datei via Makro in anderer Datei öffnen
26.05.2011 13:36:48
Tino
Hallo,
dies prüft ob diese Datei vorhanden ist. Wahr = Vorhanden und Falsch = nicht vorhanden.
Überprüfe mal den Pfad und Dateinamen genau.
Gruß Tino
Anzeige
AW: xlsm-Datei via Makro in anderer Datei öffnen
26.05.2011 16:38:41
Andrea
Der Pfad und Dateiname stimmen.
Gibt es eine Lösung, mehrere Excel-Versionen im gleichen Makro zu berücksichtigen oder müssen die Excel-Dateien alle in der gleichen Version gespeichert werden?
Danke im voraus.
AW: xlsm-Datei via Makro in anderer Datei öffnen
26.05.2011 16:34:52
Andrea
Danke Tino, aber der Dateiname und der Pfad stimmen. Ich habe den Dateinamen sogar rauskopiert und eingefügt.
Gibt es eine Lösung, die beiden Versionen von Excel mittels Makro zu öffnen?
Danke im voraus.
Gruss
Andrea
Anzeige
seltsam...
26.05.2011 17:00:40
Tino
Hallo,
Grundsätzlich kannst Du die niedrigere Version in der höheren öffnen (Kompatibilitäts-Modus),
also 2003 in 2007 öffnen.
Es gibt aber auch solche Kompatibilitäts-Pack (kenne jetzt den Namen nicht genau),
damit kann man 2007er auch mit Einschränkung in 2003 öffnen, einfach mal bei MS nachschauen.
Dennoch irritiert mich, dass die Dir- Funktion ausgibt die Datei wäre nicht vorhanden.
Ob Du die Datei dann öffnen kannst sollte ein anderes Thema sein (verwendete Version),
habe ich auch noch mal eben getestet, ich vermute immer noch der Pfad stimmt nicht.
Ich lass mal offen vielleicht kennt ein anderer die Lösung, ich habe sonst keine.
Gruß Tino
Anzeige
vielleicht ...
26.05.2011 21:13:38
Uduuh
Hallo,
... solltest du dich doch mal dazu entschließen, die Datei hochzuladen
Gruß aus’m Pott
Udo

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

xlsm-Dateien via Makro in anderen Excel-Dateien öffnen


Schritt-für-Schritt-Anleitung

  1. Vorbereitung der Excel-Dateien: Stelle sicher, dass die .xlsm-Dateien, die du öffnen möchtest, sich an einem zugänglichen Ort befinden und dass du die richtigen Pfade und Dateinamen in einer Excel-Tabelle gespeichert hast.

  2. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.

  3. Neues Modul erstellen: Klicke mit der rechten Maustaste auf "VBAProject (deine Datei)" und wähle Einfügen > Modul.

  4. Code einfügen: Kopiere den folgenden Code in das Modul:

    Sub übertragen()
        Dim ZzPfad, SpPfad, ZZDatei, SPDAtei As Integer
        Dim DatName, PfadName As Variant
        ZzPfad = 1
        SpPfad = 1
        ZZDatei = 1
        SPDAtei = 2
        Tabelle1.Activate
        Do While Cells(ZzPfad, SpPfad) <> ""
            PfadName = Cells(ZzPfad, SpPfad)
            DatName = Cells(ZZDatei, SPDAtei)
            'öffnet die Datei und führt darin das Makro "Daten speichern" aus
            Workbooks.Open filename:=PfadName
            Application.Run "'" & DatName & "'!Daten_speichern"
            ActiveWorkbook.Save
            ActiveWindow.Close
            ZzPfad = ZzPfad + 1
            ZZDatei = ZZDatei + 1
        Loop
    End Sub
  5. Makro ausführen: Schließe den VBA-Editor und führe das Makro über Entwicklertools > Makros aus.

  6. Überprüfung: Achte darauf, dass keine Leerzeichen im Dateinamen vorhanden sind, da dies zu Problemen führen kann.


Häufige Fehler und Lösungen

  • Fehler: xlsm Datei kann nicht geöffnet werden: Überprüfe den Pfad und den Dateinamen genau. Oftmals sind falsche Schreibweisen oder falsche Pfade der Grund.

  • Fehler: xlsm Datei lässt sich nicht öffnen: Stelle sicher, dass die Datei nicht von einer anderen Anwendung verwendet wird und dass du über die erforderlichen Berechtigungen verfügst.

  • Fehler bei Application.Run: Wenn du Dateinamen mit Leerzeichen nutzt, füge Hochkommas hinzu:

    Application.Run "'" & DatName & "'!Daten_speichern"

Alternative Methoden

  • Verwendung des Windows Explorers: Du kannst auch das Windows-Skript verwenden, um eine .xlsm-Datei zu öffnen, indem du den Pfad der Datei in den Explorer eingibst.

  • Excel xlsm Dateien in anderen Programmiersprachen öffnen: Wenn du mit anderen Programmiersprachen (z.B. Python) arbeitest, kannst du Bibliotheken wie openpyxl verwenden, um .xlsm-Dateien zu bearbeiten.


Praktische Beispiele

  • Beispiel 1: Angenommen, du hast eine Liste von .xlsm-Dateien in einer Excel-Tabelle. Der Pfad zur Datei steht in Spalte A und der Dateiname in Spalte B. Dein Makro kann diese Dateien nacheinander öffnen und ein bestimmtes Makro ausführen.

  • Beispiel 2: Wenn du eine .xlsm Datei auf einem Android-Gerät öffnen möchtest, stelle sicher, dass die Excel-App auf deinem Gerät installiert ist und die Datei im richtigen Format vorliegt.


Tipps für Profis

  • Debugging: Verwende MsgBox-Befehle, um den Status des Pfads oder Dateinamens während der Ausführung zu überprüfen. Beispiel:

    MsgBox Dir(PfadName, vbNormal)
  • Versionsverwaltung: Achte darauf, dass deine .xlsm-Dateien in der gleichen Version gespeichert sind, um Komplikationen zu vermeiden.

  • Kompatibilität: Nutze den Kompatibilitätsmodus in Excel, wenn du mit verschiedenen Versionen arbeitest, um sicherzustellen, dass alle Funktionen korrekt ausgeführt werden.


FAQ: Häufige Fragen

1. Was ist eine xlsm Datei? Eine .xlsm Datei ist eine Excel-Datei, die Makros enthält und in der Regel mit Microsoft Excel 2007 oder höher erstellt wurde.

2. Wie kann ich eine xlsm Datei öffnen, wenn ich eine ältere Excel-Version benutze? Du kannst die Datei in einer neueren Excel-Version öffnen und sie dann im .xls-Format speichern, um sie in älteren Versionen zu verwenden.

3. Warum kann ich eine xlsm Datei nicht öffnen? Es könnte an fehlenden Berechtigungen, einem beschädigten Dateiformat oder inkompatiblen Excel-Versionen liegen. Überprüfe den Pfad und die Dateinamen gründlich.

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