Tulosta kaikki työkirjat kansioon käyttämällä VBA: ta Microsoft Excelissä

Anonim

Tässä artikkelissa luomme makron, joka tulostaa kaikki kansion Excel -tiedostot.

Meillä on joitakin Excel -tiedostoja kansiossa, jonka haluamme tulostaa. Niillä kaikilla on sama tiedostopääte ".xlsx"

Koodin selitys

Ohjaus (TargetFolder & FileFilter)

Yllä olevaa koodia käytetään hakemistopolun ensimmäisen tiedoston tiedostonimen saamiseen.

Työkirjat Avaa TargetFolder & FileName

Yllä olevaa koodia käytetään määritetyn työkirjan avaamiseen.

ActiveWorkbook.PrintOut

Yllä olevaa koodia käytetään aktiivisen työkirjan tulostamiseen.

Seuraa koodia alla

 Vaihtoehto Explicit Sub PrintAllWorkbooksInFolder (TargetFolder as String, FileFilter as String) 'Muuttujan ilmoittaminen Dim FileName as String' Näytön päivitysten poistaminen käytöstä Application.ScreenUpdating = False 'Polunerottimen lisääminen kohdekansion nimen loppuun Jos oikea (TargetFolder, 1) "\" Sitten TargetFolder = TargetFolder & "\" End If 'Oletuspolun määrittäminen tiedostosuodattimelle If FileFilter = "" Sitten FileFilter = "*.xls"' Hae kansion ensimmäisen tiedoston tiedostonimi FileName = Dir (TargetFolder & FileFilter) Len (Tiedostonimi)> 0 Jos tiedostonimi ThisWorkbook.Name Sitten avaa työkirjan työkirjat. seuraava tiedosto kansiossa FileName = Dir Wend End Sub Sub CallingProcedure () 'Declaring muuttujat Dim FolderPath, FileName As String' Arvojen hakeminen taulukon 1 tekstiruudusta FolderPath = Sheet1.TextBox1.Value FileName = Sheet1.TextB ox2.Value 'Calling PrintAllWorkbooksInFolder procedure PrintAllWorkbooksInFolder FolderPath, FileName End Sub 

Jos pidit tästä blogista, jaa se ystävillesi Facebookissa. Voit myös seurata meitä Twitterissä ja Facebookissa.

Haluaisimme kuulla sinusta, kerro meille, kuinka voimme parantaa työtämme ja parantaa sitä sinulle. Kirjoita meille sähköpostitse