Open en sluit Excel-werkmap met VBA

Anonim

In dit artikel zullen we leren over het sluiten en openen van de methode in Excel VBA die wordt gebruikt voor het openen van de werkmap sluiten en ook voor het sluiten van de open werkmap.

We maken een opdrachtknop in het Excel-blad en wijzen een macro toe.

Om te weten hoe u Activex-besturingselement maakt, klikt u op link

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

Hoe Excel-werkmap openen via VBA?

Volg onderstaande stappen en codering: -

  • Voeg 2 opdrachtknoppen in.
  • De eerste opdrachtknop die we gebruiken om met de rechtermuisknop op de opdrachtknop te klikken.
  • De VBE-pagina wordt geopend en kopieer de onderstaande codering en plak deze in de VBE-pagina.
  • Wijs onderstaande macro toe om de werkmap te openen.
Sub sOpenWerkmap()
' definieer variabele voor bestandsnaam
Dim csFileName As String
' haal de bestandsnaam op uit cel A1 op Blad1
csFileName = ThisWorkbook.Sheets("Voorbeeld openen en sluiten").Bereik ("A1")
' open de werkmap
Werkmappen.Open csFileName
MsgBox csFileName & "geopend"
Einde sub
  • Tweede opdrachtknop die we gebruiken om met de rechtermuisknop op de opdrachtknop te klikken.
  • De VBE-pagina wordt geopend en kopieer de onderstaande codering en plak deze in de VBE-pagina.
  • Wijs onderstaande macro toe om de werkmap te openen.
Sub sCloseWerkmap()
' definieer variabele voor bestandsnaam
Dim csFileName As String
' haal de bestandsnaam op uit cel A1 op Blad1
csFileName = ThisWorkbook.Sheets("Voorbeeld openen en sluiten").Bereik ("A1")
' sluit de werkmapWorkbooks(Split(csFileName, "\")(UBound(Split(csFileName, "\"))))).CloseMsgBox Split(csFileName, "\")(UBound(Split(csFileName, "\")))) & " gesloten"
Einde sub

Beide macro's worden toegewezen aan de opdrachtknoppen, we moeten onderstaande macrocodering gebruiken.

Optie expliciet
Sub sExample()Const csFileName As String = _
"C:\Test\Master.xlsx" werkmappen.Open
csFileNameWorkbooks(Split(csFileName, "\")(UBound(Split(csFileName, "\"))))).Sluiten
Einde subSub sOpenWerkmap()
' definieer variabele voor bestandsnaam
Dim csFileName As String
' haal de bestandsnaam op uit cel A1 op Blad1
csFileName = ThisWorkbook.Sheets("Example Open and Close").Range("A1") ' open de werkmap
Workbooks.Open csFileNameMsgBox csFileName & "geopend"
Einde subSub sCloseWerkmap()
' definieer variabele voor bestandsnaam
Dim csFileName As String ' haal de bestandsnaam op uit cel A1 op Blad1
csFileName = ThisWorkbook.Sheets("Voorbeeld openen en sluiten").Bereik ("A1")
' sluit de werkmapWorkbooks(Split(csFileName, "\")(UBound(Split(csFileName, "\"))))).CloseMsgBox Split(csFileName, "\")(UBound(Split(csFileName, "\")))) & " gesloten"
Einde sub

Opmerking: - U moet het pad vermelden volgens uw bestand.