Otwórz i zamknij skoroszyt programu Excel za pomocą VBA

Anonim

W tym artykule dowiemy się, jak zamykać i otwierać metodę w Excel VBA, która służy do otwierania zamykanego skoroszytu, a także zamykania otwartego skoroszytu.

Tworzymy przycisk poleceń w arkuszu Excel i przypisujemy makro.

Aby dowiedzieć się, jak utworzyć kontrolkę Activex, kliknij łącze

https://www.exceltip.com/tips/activex-controls-in-microsoft-excel-2010.html

Jak otworzyć skoroszyt programu Excel przez VBA?

Postępuj zgodnie z poniższymi instrukcjami i kodowaniem:-

  • Wstaw 2 przyciski poleceń.
  • Pierwszy przycisk polecenia, którego używamy, aby kliknąć prawym przyciskiem myszy na przycisku polecenia.
  • Strona VBE otworzy się i skopiuje poniższy kod i wklei na stronie VBE.
  • Aby otworzyć skoroszyt, przypisz poniższe makro.
Sub sOpenWorkbook()
' zdefiniuj zmienną dla nazwy pliku
Dim csFileName As String
' pobierz nazwę pliku z komórki A1 w Arkuszu1
csFileName = ThisWorkbook.Sheets("Przykład otwierania i zamykania").Range("A1")
' otwórz skoroszyt
Workbooks. Otwórz csFileName
MsgBox nazwa_pliku cs i " otwarte"
Napis końcowy
  • Drugi przycisk polecenia, którego używamy, aby kliknąć prawym przyciskiem myszy na przycisku polecenia.
  • Strona VBE otworzy się i skopiuje poniższy kod i wklei na stronie VBE.
  • Aby otworzyć skoroszyt, przypisz poniższe makro.
Sub sZamknij Zeszyt()
' zdefiniuj zmienną dla nazwy pliku
Dim csFileName As String
' pobierz nazwę pliku z komórki A1 w Arkuszu1
csFileName = ThisWorkbook.Sheets("Przykład otwierania i zamykania").Range("A1")
' zamknij skoroszytWorkbooks(Split(csFileName, "\")(UBound(Split(csFileName, "\")))).CloseMsgBox Split(csFileName, "\")(UBound(Split(csFileName, "\"))) & " Zamknięte"
Napis końcowy

Oba makra zostaną przypisane do przycisków poleceń, musimy użyć poniższego kodowania makr.

Opcja Wyraźna
Sub sExample()Const csFileName As String = _
"C:\Test\Master.xlsx" Skoroszyty.Otwórz
csFileNameWorkbooks(Split(csFileName, "\")(UBound(Split(csFileName, "\")))).Close
Napis końcowySub sOpenWorkbook()
' zdefiniuj zmienną dla nazwy pliku
Dim csFileName As String
' pobierz nazwę pliku z komórki A1 w Arkuszu1
csFileName = ThisWorkbook.Sheets("Przykład otwierania i zamykania").Range("A1") ' otwórz skoroszyt
Workbooks.Open csFileNameMsgBox csFileName & " otwarty"
Napis końcowySub sZamknij Zeszyt()
' zdefiniuj zmienną dla nazwy pliku
Dim csFileName As String ' pobierz nazwę pliku z komórki A1 w arkuszu Sheet1
csFileName = ThisWorkbook.Sheets("Przykład otwierania i zamykania").Range("A1")
' zamknij skoroszytWorkbooks(Split(csFileName, "\")(UBound(Split(csFileName, "\")))).CloseMsgBox Split(csFileName, "\")(UBound(Split(csFileName, "\"))) & " Zamknięte"
Napis końcowy

Notatka: - Musisz podać ścieżkę zgodnie z twoim plikiem.