Åpne og lukk Excel -arbeidsbok ved hjelp av VBA

Anonim

I denne artikkelen vil vi lære om å lukke og åpne metoden i Excel VBA som brukes til å åpne arbeidsboka og også lukke den åpne arbeidsboken.

Vi lager kommandoknapp i Excel -ark og tildeler makro.

For å vite om hvordan du oppretter Activex -kontroll, klikk på lenken

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

Hvordan åpne Excel -arbeidsbok gjennom VBA?

Følg trinnene og kodingen nedenfor:-

  • Sett inn 2 kommandoknapper.
  • Første kommandoknapp vi bruker til å høyreklikke til museknappen på kommandoknappen.
  • VBE -siden blir åpen og kopierer kodingen nedenfor og limer inn på VBE -siden.
  • For å åpne arbeidsboken tilordner du makroen nedenfor.
Sub sOpenWorkbook ()
'definere variabel for filnavn
Dim csFileName som streng
'få filnavn fra celle A1 på Sheet1
csFileName = ThisWorkbook.Sheets ("Eksempel Åpne og Lukk"). Område ("A1")
'åpne arbeidsboken
Arbeidsbøker. Åpne csFileName
MsgBox csFileName & "åpnet"
Slutt Sub
  • Den andre kommandoknappen bruker vi til å høyreklikke med musen på kommandoknappen.
  • VBE -siden blir åpen og kopierer kodingen nedenfor og limer inn på VBE -siden.
  • For å åpne arbeidsboken tilordner du makroen nedenfor.
Sub sCloseWorkbook ()
'definere variabel for filnavn
Dim csFileName som streng
'få filnavn fra celle A1 på Sheet1
csFileName = ThisWorkbook.Sheets ("Eksempel Åpne og Lukk"). Område ("A1")
'lukk arbeidsbokenWorkbooks (Split (csFileName, "\") (UBound (Split (csFileName, "\")))). CloseMsgBox Split (csFileName, "\") (UBound (Split (csFileName, "\"))) & "stengt"
Slutt Sub

Begge makroene vil tilordne kommandoknappene, vi må bruke makrokodingen nedenfor.

Alternativ Eksplisitt
Sub sExample () Const csFileName As String = _
"C: \ Test \ Master.xlsx" arbeidsbøker.Åpne
csFileNameWorkbooks (Split (csFileName, "\") (UBound (Split (csFileName, "\")))). Lukk
Slutt SubSub sOpenWorkbook ()
'definere variabel for filnavn
Dim csFileName som streng
'få filnavn fra celle A1 på Sheet1
csFileName = ThisWorkbook.Sheets ("Eksempel Åpne og Lukk"). Område ("A1") 'åpner arbeidsboken
Arbeidsbøker. Åpne csFileNameMsgBox csFileName og "åpnet"
Slutt SubSub sCloseWorkbook ()
'definere variabel for filnavn
Dim csFileName As String 'hent filnavn fra celle A1 på Sheet1
csFileName = ThisWorkbook.Sheets ("Eksempel Åpne og Lukk"). Område ("A1")
'lukk arbeidsbokenWorkbooks (Split (csFileName, "\") (UBound (Split (csFileName, "\")))). CloseMsgBox Split (csFileName, "\") (UBound (Split (csFileName, "\"))) & "stengt"
Slutt Sub

Merk: - Du må nevne banen i henhold til filen din.