Office: VBA xls Datei öffnen

Helfe beim Thema VBA xls Datei öffnen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Bisher verwende ich folgende Variante um eine andere Datei zu öffnen auszulesen und wieder zu schliessen. Die Frage die ich habe ist: Kann man das auch... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von andysmith, 1. Oktober 2009.

  1. andysmith Erfahrener User

    VBA xls Datei öffnen


    Bisher verwende ich folgende Variante um eine andere Datei zu öffnen auszulesen und wieder zu schliessen. Die Frage die ich habe ist: Kann man das auch anders ohne "Application.DisplayAlerts = False" machen??
    Problem ist, ohne diese Zeile muß ich jedesmal speichern vor dem schliessen der Datei auswählen. Vielleicht gibt es ja eine Möglichkeit, eine Datei im "read only" Modus zu öffnen, ohne darüber nachzudenken, wie verhält sich das, wenn jemand die Datei parallel zum bearbeitet geöffnet hat, also man eigentlich "Schreibgeschützt öffnen" bestätigen müsste....

    Hier der derzeit verwendet Code

    Code:
    Sub einfuegen()
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Dim ....
    
    Dim LUV, Paten As Workbook
    Set LUV = ThisWorkbook
    Set Paten = Workbooks.Open(Filename:="i:\Makro\XXXXX.xls")
    LUV.Worksheets("Sheet1").Range("C12:FN220").ClearContents
    
    ......
    ......
    
    Paten.Close
    Set Paten = Nothing
    Set LUV = Nothing
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    End Sub
    Vielen Dank!!!
     
    andysmith, 1. Oktober 2009
    #1
  2. schatzi Super-Moderator
    Hallo!

    Ich bin zwar kein VBA-Experte, aber Workbooks.Open verfügt ja durchaus auch noch über weitere Optionen, so z.B. ReadOnly=True, um Dateien schreibgeschützt zu öffnen.
    Deine eigentliche Problematik verstehe ich nicht ganz, denn was tut dir an der Zeile "Application.DisplayAlerts" so weh??
     
    schatzi, 1. Oktober 2009
    #2
  3. andysmith Erfahrener User
    Code:
    Paten.Close savechanges:=False
    YES!!!

    THX

    An der Zeile "Application.DisplayAlerts" gefällt mir nicht der "Absolutismus". Soweit ich das einschätze gilt das für alles und ich will ja nur die Speichern Meldung am Ende weg haben, andere Fehler zu anderen Sachen könnten relevant sein........
     
    andysmith, 2. Oktober 2009
    #3
  4. Exl121150 Erfahrener User

    VBA xls Datei öffnen

    Hallo,

    Dim LUV, Paten As Workbook
    Set LUV = ThisWorkbook
    Set Paten = Workbooks.Open(Filename:="i:\Makro\XXXXX.xls")


    In der 1. der 3 blauen Zeilen ist mir aufgefallen, dass Du der Variable LUV explizit keinen Datentyp zugewiesen hast, weshalb sie höchstwahrscheinlich den Datentyp "Variant" und nicht "Workbook" erhalten hat.
    In VBA gibt es - im Gegensatz zu vielen anderen Programmiersprachen - bei der Datendeklaration keine Variablenlisten, denen man gleichzeitig einen einheitlichen Datentyp zuweisen kann.

    Wenn man haben will, dass sowohl LUV als auch Paten den Datentyp Workbook erhalten sollen, muss das Dim-Statement folgendermaßen lauten:
    Dim LUV As Workbook, Paten As Workbook
     
    Exl121150, 2. Oktober 2009
    #4
  5. Beverly
    Beverly Erfahrener User
    Hi Andy,

    die Codezeile Application.DisplayAlerts kann an einer beliebigen Stelle im Code stehen - du kannst sie also auch direkt vor und nach den relevanten Codeteil setzen:

    Code:
    Application.DisplayAlerts = False
    Paten.Close
    Application.DisplayAlerts = True
    
    Bis später,
    Karin
     
    Beverly, 2. Oktober 2009
    #5
Thema:

VBA xls Datei öffnen

Die Seite wird geladen...
  1. VBA xls Datei öffnen - Similar Threads - VBA xls Datei

  2. VBA in einer Zeile zu lang

    in Microsoft Excel Hilfe
    VBA in einer Zeile zu lang: Moin, mein VBA Code ist für eine Zeile zu lang. Kann mir einer helfen wie ich den auf 2 Zeilen aufteilen Kann? arrSchuhDaten = Array(Range("A6"), Range("F6"), Range("J6"), Range("A7"),...
  3. Listbox wird nicht breiter, Schriftgrösse ändert sich

    in Microsoft Excel Hilfe
    Listbox wird nicht breiter, Schriftgrösse ändert sich: Hallo, ich habe ein Formular dessen Breite ich mit der Maus ändern kann. Im Formular habe ich einen Rahmen und darin eine Listbox deren Breite an die Formularbreite angepasst wird....
  4. Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch

    in Microsoft Excel Hilfe
    Kontrollkästchen aktivieren ohne VBA - wenn KK1 angekreuzt dann KK2 auch: Hallo zusammen, erstmal danke für all die Tipps und Kniffe, die ich ohne eigenen Thread gefunden und gelernt habe. Leider finde ich mein Thema nirgendwo... Aktuell habe ich zwei Spalten mit...
  5. Per Hyperlink ausgeblendetes Blatt einblenden

    in Microsoft Excel Hilfe
    Per Hyperlink ausgeblendetes Blatt einblenden: Hola ins Forum, ich bräuchte mal wieder eure Hilfe. Ich habe ein Tabellenblatt das mir als Register dient und wo Hyperlinks eingefügt sind um auf das dazugehörige Blatt zu springen. Diese Blätter...
  6. VBA makro Umwandlung von XLS zu XLSX

    in Microsoft Excel Hilfe
    VBA makro Umwandlung von XLS zu XLSX: Nach dem Update aus Office 2010 von Office 2003 wünscht ein Kunde die gesamte Konvertierung seiner Excel-Dateien aus dem Format Excel 2003 (XLS) in das neue 2010 Format (XLSX). Dies lässt sich ihm...
  7. aus verschiedenen xls dateien auslesen und in ein formular auflisten

    in Microsoft Excel Hilfe
    aus verschiedenen xls dateien auslesen und in ein formular auflisten: Hallo, ich hoff das mir jemand helfen kann... mein problemm: habe ca. 1200 xls dateien wo ich die adressdaten auslesen und in einer neuen datei (tabellenblatt) eintragen muss. die auszulesenden...
  8. vba shellexecute - nur .xls geht nicht...

    in Microsoft Excel Hilfe
    vba shellexecute - nur .xls geht nicht...: Moinsens, allerseits! Hat hier schon mal jemand mit ShellExecute unter Excel-VBA versucht, eine Excel-Datei zu öffnen? Ich habe für einen Kollegen meine Access-VBA-Routine "LaunchDocument"...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden