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