Technologieaustausch

So öffnen, speichern und schließen Sie eine Excel-Arbeitsmappe in VBA

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Vorwort

In diesem Abschnitt erfahren Sie, wie Sie mit der VBA-Methode eine Excel-Arbeitsmappe öffnen, die Excel-Arbeitsmappe speichern und schließen und die Methoden „Öffnen“, „Speichern“ und „Schließen“ verwenden.


1. Verwenden Sie die Open-Methode, um die Arbeitsmappe zu öffnen

Workbooks.Öffnen(Dateiname,Links aktualisieren,Nur Lesen,Format,Passwort,PasswortWriteRes,Ignorieren-Nur Lesenempfohlen,Ursprung,Trennzeichen,Bearbeitbar,Benachrichtigen,Konverter,AddToMru,Lokal,Beschädigt-Laden)
虽参数较多,但只有FileName为必填参数,表示需要打开的工作簿文件名,关于参数说明请参考下表:

Parameterveranschaulichen
DateinameDer Dateiname der Arbeitsmappe, die geöffnet werden muss, und der absolute Pfad der Datei sind erforderlich.
UpdateLinks Gibt an, wie externe Referenzen (Links) in der Arbeitsmappe aktualisiert werden.Die möglichen Werte sind 0 oder 3, was bedeutet, dass externe Referenzen beim Öffnen der Arbeitsmappe nicht aktualisiert werden und externe Referenzen beim Öffnen der Arbeitsmappe aktualisiert werden.
SchreibgeschütztWenn True, bedeutet dies, dass die Arbeitsmappe im schreibgeschützten Modus geöffnet wird.
Format Wenn Sie eine Textdatei öffnen, verwenden Sie diesen Parameter, um das Trennzeichen anzugeben. Mögliche Werte sind 1 (Tabulator), 2 (Komma), 3 (Leerzeichen), 4 (Semikolon), 5 (keine), 6 (benutzerdefiniertes Zeichen, angegeben durch den Delimiter-Parameter)
Passwort Wenn für die zu öffnende Arbeitsmappe ein Öffnungskennwort festgelegt ist, verwenden Sie diesen Parameter, um das Kennwort anzugeben.Wenn ein Passwort festgelegt ist, dieser Parameter jedoch nicht ausgefüllt ist, wird ein Dialogfeld angezeigt, in dem der Benutzer zur Eingabe des Passworts aufgefordert wird.
WriteResPasswordWenn die zu öffnende Arbeitsmappe über ein Passwort zum Schutz der Struktur verfügt, geben Sie mit diesem Parameter das entsprechende Passwort an.
IgnorierenNurLesenEmpfohlenWenn True, bedeutet dies, dass keine schreibgeschützten empfohlenen Informationen angezeigt werden.
Herkunft Wenn Sie eine Textdatei öffnen, verwenden Sie diesen Parameter, um anzugeben, von welchem ​​Betriebssystem die Datei stammt, um Codepages und Wagenrückläufe/Zeilenvorschübe korrekt zu verarbeiten. Mögliche Werte sind die Konstanten xlMacintosh, xlWindows, xlMSDOS.
TrennzeichenWenn beim Öffnen einer Textdatei der Parameter „Format“ auf 6 gesetzt ist, verwenden Sie diesen Parameter, um das Zeichen als Trennzeichen anzugeben. Wenn mehrere Zeichen festgelegt sind, wird standardmäßig nur das erste Zeichen verwendet.
EditierbarWenn es sich bei der zu öffnenden Datei um ein Excel 4.0-Add-In handelt, ist das Add-In ein sichtbares Fenster, wenn der Wert dieses Parameters „True“ ist Modus und kann nicht sichtbar gemacht werden; Dieser Parameter kann in den Versionen 5.0 und höher nicht verwendet werden.
Benachrichtigen Wenn die zu öffnende Datei nicht im Lese-/Schreibmodus geöffnet werden kann und der Wert dieses Parameters True ist, kann die Datei zur Dateibenachrichtigungsliste hinzugefügt werden. Excel öffnet die Datei im schreibgeschützten Modus, fragt die Dateibenachrichtigungsliste ab und benachrichtigt den Benutzer, wenn die Datei verfügbar ist.Wenn der Wert dieses Parameters False ist oder weggelassen wird, wird keine Benachrichtigung angefordert und nicht verfügbare Dateien können nicht geöffnet werden.
Konverter Die Indexnummer des Dateikonverters, den der Dateikonverter beim Öffnen der Datei zuerst verwenden wollte. Wenn die Datei vom angegebenen Dateikonverter nicht erkannt wird, versuchen Sie es mit einem anderen Konverter.
HinzufügenToMru Wenn der Wert dieses Parameters True ist, wird der Job nicht zur Liste der zuletzt verwendeten Dateien hinzugefügt. Der Standardwert ist False
LokalWenn der Wert dieses Parameters True ist, wird die Datei in der Sprache von Excel gespeichert (einschließlich der Systemsteuerungseinstellungen). Der Standardwert ist False, die Datei wird in der Sprache von VBA gespeichert.
Beschädigte Ladung Die verfügbaren Werte sind die Konstanten xlNormalLoad, xlRepairFile und xlExtractData, was bedeutet, dass die Arbeitsmappe normal geöffnet wird, versucht wird, die Arbeitsmappe zu reparieren, und versucht wird, die Daten in der Arbeitsmappe wiederherzustellen. Der Standardwert ist xlNormalLoad
Beispiel 1: Öffnen Sie eine Excel-Arbeitsmappe
Sub OpenExcelFile()
    
    Dim strFileName As String
    ' 定义文件名称
    strFileName = "D:VBAEmployee.xlsx"
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFileName
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Beispiel 2: Öffnen Sie die Excel-Arbeitsmappe unter dem aktuellen Pfad
Sub OpenExcelFile()

    Dim strFileName As String
    Dim strFilePath
    
    ' 定义文件名称
    strFileName = "Employee.xlsx"
    ' 获取当前路径
    strFilePath = ThisWorkbook.Path
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFilePath & "" & strFileName
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

2. Speichern und schließen Sie die Datei

Wenn Sie eine Excel-Arbeitsmappe öffnen und deren Inhalt bearbeiten und sie dann speichern und schließen möchten, können Sie die Methoden „Speichern“ und „Schließen“ verwenden.

Beispiel: Nachdem Sie die Datei „Employee.xlsx“ im aktuellen Pfad geöffnet und das aktuelle Datum in Zelle A1 von Tabelle 1 geschrieben haben, speichern und schließen Sie die Datei „Employee.xlsx“. Der vollständige Code lautet wie folgt:
Sub WriteCurrentDate()
    
    ' 申明变量
    Dim strFileName As String
    Dim strFilePath
    Dim ws As Worksheet
    Dim wb As Workbook
    
    ' 定义文件名称
    strFileName = "Employee.xlsx"
    ' 获取当前路径
    strFilePath = ThisWorkbook.Path
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFilePath & "" & strFileName
    
    ' 定义sheet1工作表对象以及当前打开的工作簿对象
    Set ws = ActiveWorkbook.Worksheets("Sheet1")
    Set wb = ActiveWorkbook
    
    ' A1单元格写入当前日期
    ws.Range("A1").Value = Date
    
    ' 保存并关闭文件
    wb.Save
    wb.Close
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28