Useiden Excel -tiedostojen yhdistäminen yhdeksi Excel -työkirjaksi

Sain puhelun ystävältäni, joka halusi yhdistää useita Excel -tiedostoja yhteen Excel -työkirjaan. Hänellä oli paljon tiedostoja kansiossa ja hän halusi saada kaikki laskentataulukot kaikista työkirjoista yhteen työkirjaan.

Vaikka tämä voidaan tehdä manuaalisesti, se olisi aikaa vievää ja virhealtista.

Yksinkertainen VBA -koodi voi kuitenkin tehdä tämän muutamassa sekunnissa.

Yhdistä useita Excel -tiedostoja yhdeksi tiedostoksi

Tässä on koodi, joka voi yhdistää useita Excel -työkirjoja tietyssä kansiossa yhdeksi Excel -työkirjaksi:

Sub ConslidateWorkbooks () 'Luo Sumit Bansal osoitteesta https://trumpexcel.com Dim FolderPath merkkijonona Dim Tiedostonimi merkkijonona Dim Sheet laskentataulukkona Application.ScreenUpdating = False FolderPath = Environ ("userprofile") & "DesktopTest" Filename = Dir ( FolderPath & "*.xls*") Do while Filename "" Työkirjat.Open Filename: = FolderPath & Filename, ReadOnly: = True For For Sheets in ActiveWorkbook.Sheets Sheet.Copy After: = ThisWorkbook.Sheets (1) Next Sheet Workbooks (Tiedostonimi) .Sulje Tiedostonimi = Dir () Silmukkasovellus. ScreenUpdating = Todellinen loppuosa

Kuinka käyttää tätä koodia?

Tässä on ohjeet koodin käyttöön:

  • Laita kaikki Excel -tiedostot, jotka haluat yhdistää kansioon. Tätä opetusohjelmaa varten olen luonut Test -kansion ja siinä on kuusi tiedostoa (4 Excel -työkirjaa ja 1 Power Point ja Word).
  • Avaa uusi Excel -työkirja.
  • Paina ALT + F11 (tai siirry kohtaan Kehittäjä -> Koodi -> Visual Basic). Tämä avaa Visual Basic Editorin.
  • Napsauta hiiren kakkospainikkeella mitä tahansa työkirjan objekteja VB Editorin projektieditorissa ja valitse Lisää -> Moduuli. Tämä lisää työkirjan moduulin.
  • Kaksoisnapsauta moduulia. Se avaa oikealla olevan koodi -ikkunan.
  • Kopioi ja liitä yllä oleva koodi koodi -ikkunaan.
  • Koodissa sinun on vaihdettava seuraava koodirivi:
    FolderPath = Ympäristö ("userprofile") & "DesktopTest"

    Muuta tällä rivillä osa lainausmerkeissä (korostettu oranssilla) sen kansion sijainnin kanssa, johon haluat yhdistää tiedostot. Yllä olevassa koodissa kansio on työpöydällä. Jos sinulla on se jossain muussa paikassa, määritä polku täällä.

  • Aseta kohdistin mihin tahansa koodiin ja napsauta vihreää toistopainiketta työkalupalkin vaihtoehdoissa (tai paina F5 -näppäintä).

Tämä suorittaa koodin ja kaikki kansion kaikkien Excel -tiedostojen laskentataulukot yhdistetään yhdeksi työkirjaksi.

Kuinka tämä koodi toimii?

  • Koodi käyttää DIR -toimintoa saadakseen tiedostonimet määritetystä kansiosta.
  • Seuraava rivi määrittää ensimmäisen Excel -tiedoston nimen muuttujalle "Tiedostonimi".
    Tiedostonimi = Dir (FolderPath & "*.xls*")
  • Do Do -silmukkaa käytetään sitten tarkistamaan, onko kaikki tiedostot peitetty.
  • Do Do -kierron sisällä jokaiselle silmukalle kopioidaan kaikki laskentataulukot työkirjaan, jossa käytämme koodia.
  • Do Loopin lopussa käytetään seuraavaa koodiriviä: Filename = Dir (). Se määrittää seuraavan Excel -tiedoston nimen Tiedostonimi -muuttujalle ja silmukka alkaa uudelleen.
  • Kun kaikki tiedostot on peitetty, DIR -funktio palauttaa tyhjän merkkijonon, jolloin silmukka päättyy.

Tässä on selitys MSDN -kirjaston DIR -toiminnosta:

Ohjaaja palauttaa ensimmäisen tiedostonimen, joka vastaa polun nimeä. Jos haluat saada muita polun nimeä vastaavia tiedostonimiä, soita Ohjaaja jälleen ilman perusteluja. Kun tiedostojen nimet eivät enää vastaa toisiaan, Ohjaaja palauttaa nollapituisen merkkijonon (“”).

Oletko koskaan kokeillut jotain tällaista VBA: n avulla? Jaa tekemäsi ja me kaikki voimme oppia siitä.

Säästä hullua aikaa käyttämällä VBA: ta. Tarkista Excel VBA -KURSSI.

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave