Johdanto FileSystemObject-tiedostoon

Miksi käytämme VBA: ta? Käytämme VBA: ta automatisoidaksemme tehtäviä. Yleensä excel-työssä työskentelemme vain riveillä ja sarakkeilla olevien tietojen kanssa, jotka ovat taulukoiden tai vastaavien muodossa. Entä tiedostot ja kansiot, jotka eivät kuulu exceliin? Entä jos meidän on käytettävä tietoja mistä tahansa tiedostosta, miten pääsemme niihin. FileSystemObject on tässä hyödyllinen.

FileSystemObject- tai FSO-tiedostoa käytetään tiedostojärjestelmään pääsyyn tietokoneelta. Tämän avulla voimme käyttää kaikkia tiedostoja kansioihin, joita meillä on tällä hetkellä työskentelevällä tietokoneella. FSO on periaatteessa API-työkalu, jota käytetään pääsyyn muihin tiedostoihin. Nyt tätä ei ole oletuksena VBA: ssa, josta opitaan myöhemmin tässä artikkelissa. Ymmärrämme ensin, mikä FSO on. Aikaisemmin VBA: lla meillä oli DIR-toiminto, jota kutsuttiin pääsemään muihin tiedostoihin ja kansioihin tietokoneelta. DIR-toiminnon koodaus oli erittäin monimutkainen työskennellä. Mutta FSO: ssa asiat ovat erilaisia.

Nyt on neljä tyyppiä esineitä, joihin FSO voi päästä, ja ne ovat seuraavat:

  • Asema: Tätä käytetään pääsyyn mainittuun asemaan.
  • Kansio: Tätä käytetään pääsyyn mainittuun kansioon.
  • Tiedosto: Tätä käytetään pääsyyn mainittuun tiedostoon.
  • Tekstivirta: Tämän objektin avulla voimme lukea tai kirjoittaa tekstitiedoston.

Jokaisella yllä luetellulla esineellä on erilaisia ​​menetelmiä niiden käyttämiseen. Esimerkiksi, jos haluamme kopioida tiedoston, käytämme CopyFile-menetelmää tai poistamme kansion, käytämme DeleteFolder-menetelmää ja niin edelleen.

Kuten olen jo puhunut edellä, FSO: ta ei ole oletuksena läsnä VBA: ssa, on olemassa kaksi tapaa ottaa FSO käyttöön VBA: ssa.

  • Ensimmäinen menetelmä on asettamalla viite.
  • Toinen tapa on viitata kirjastoon koodista.

Vaikka toinen menetelmä on monimutkaisempi, on aina suositeltavaa käyttää ensimmäistä menetelmää, joka on hyvin yksinkertainen. Seuraakaamme näitä perusvaiheita.

Siirry VBA: ssa Työkalut-välilehteen ja siirry sitten Viitteet,

Ohjattu toiminto tulee näkyviin, valitse Microsoft Scripting Runtime alla olevan kuvan mukaisesti ja paina OK.

Nyt voimme käyttää FSO: ta VBA: ssa. Nyt voimme käyttää tätä muutamien esimerkkien avulla ja oppia siitä.

Kuinka käyttää VBA FileSystemObject -sovellusta Excelissä?

Alla on erilaisia ​​esimerkkejä VBA FileSystemObject -toiminnon käyttämisestä Excelissä

Voit ladata tämän VBA FileSystemObject Excel -mallin täältä - VBA FileSystemObject Excel Template

VBA FileSystemObject - esimerkki # 1

Ennen kuin alamme käyttää FSO: ta Vbassa, anna meidän ensin oppia luomaan esiintymiä VBA: ssa.

Vaihe 1: Luo alamoduulissa alamenettely,

Koodi:

 Sub Newfso () Loppu Sub 

Vaihe 2: Ilmoita muuttuja nimellä FileSystemObject alla olevan kuvan mukaisesti,

Koodi:

 Sub Newfso () himmentää A FileSystemObject End Sub -kohdassa 

Vaihe 3: Nyt meidän on luotava ilmentymä, koska FSO on objekti, joka käyttää SET-käskyä alla kuvatulla tavalla,

Koodi:

 Sub Newfso () himmentää A kuin FileSystemObject Set A = Uusi FileSystemObject End Sub 

Nyt tämä lausunto antaa meille mahdollisuuden luoda tai muokata tiedostoja tai kansioita FSO: n avulla.

Vaihe 4: Nyt näemme IntelliSense-ominaisuuden, kun FSO on otettu käyttöön. Käytä pisteoperaattoria seuraavasti:

Koodi:

 Sub Newfso () himmentää A FileSystemObject -joukkona A = Uusi FileSystemObject A. End sub 

Se antoi meille erilaisia ​​vaihtoehtoja IntelliSense-ominaisuuden avulla. Näin luomme ilmentymät FSO: lla.

VBA FileSystemObject - esimerkki 2

Nyt kun olemme luoneet esiintymän esimerkissä 1, siirrymme eteenpäin käyttämään sitä ja tarkistamme, onko tiedosto tai kansio olemassa.

Vaihe 1: Kun olemme luoneet uuden FileSystemObject-tiedoston, käytä IF-käskyä selvittääksesi, onko kansiota vai ei, seuraavasti:

Koodi:

 Sub Newfso () himmentää A kuin FileSystemObject Aseta A = Uusi FileSystemObject Jos A.FolderExists ("C: \ Users \ Public \ Project"), sitten End Sub 

Vaihe 2: Jos kansio on olemassa, haluamme näyttää kansion olemassa, ja jos ei, haluamme sen näyttävän, että kansiota ei ole.

Koodi:

 Sub Newfso () himmentää A kuin FileSystemObject Aseta A = Uusi FileSystemObject Jos A.FolderExists ("C: \ Users \ Public \ Project") Sitten MsgBox "Kansio on olemassa" Muu MsgBox "Kansiota ei ole" End if End Sub 

Vaihe 3: Suorita nyt yllä oleva koodi ja katso tulos seuraavalla tavalla,

Kansio on olemassa työpöydälläni, joten saamme viestin, että kansio on olemassa.

VBA FileSystemObject - esimerkki 3

Nyt kun keskustelemme siitä, että FSO: lla on erilaisia ​​esineitä, kuten asemia. Annetaan selville, kuinka paljon tilaa minulla on E-asemassani.

Vaihe 1: Aloita toisella osaprosessilla seuraavasti:

Koodi:

 Sub Newfso1 () Loppu Sub 

Vaihe 2: Julista muuttuja nyt FileSystemObject-tiedostona ja aseta se uuteen esiintymään seuraavasti:

Koodi:

 Sub Newfso1 () himmentää A FileSystemObject -sarjana A = New FileSystemObject End Sub Sub 

Vaihe 3: Koska nyt käytämme Drive-ominaisuutta, ilmoita yksi muuttuja Drive-tyypiksi ja yksi muuttuja kaksinkertaiseksi pitämäänksesi tilan tilaa seuraavasti:

Koodi:

 Sub Newfso1 () himmentää A kuin FileSystemObject-joukko A = Uusi FileSystemObject himmentää D asemana, Dspace kaksoispäätynä Sub 

Vaihe 4: Nyt luomme uusi asemaobjekti alla olevan kuvan mukaisesti,

Koodi:

 Sub Newfso1 () Dim A kuin FileSystemObject Set A = Uusi FileSystemObject Dim D asemana, Dspace kaksoisjoukkona D = A.GetDrive ("C:") End Sub 

Tämä on yksi FSO-menetelmistä, joita käytämme aseman käyttämiseen.

Vaihe 5: Käytämme toista FSO-menetelmää aseman vapaan tilan saamiseksi ja sen tallentamiseksi muuttujalle, joka on määritelty aseman tallentamiseksi,

Koodi:

 Sub Newfso1 () Dim A kuin FileSystemObject Set A = Uusi FileSystemObject Dim D asemana, Dspace kaksoisjoukkona D = A.GetDrive ("C:") Dspace = D.FreeSpace End Sub 

Vaihe 6: Lasketaan nyt tila GB: nä seuraavasti:

Koodi:

 Sub Newfso1 () Dim A kuin FileSystemObject Set A = Uusi FileSystemObject Dim D asemana, Dspace kaksoisjoukkona D = A.GetDrive ("C:") Dspace = D.FreeSpace Dspace = Pyöreä ((Dspace / 1073741824), 2) End Sub 

Vaihe 7: Näytä nyt Drive-tilaa varten tallennettu arvo käyttämällä msgbox-toimintoa seuraavasti:

Koodi:

 Sub Newfso1 () Dim A kuin FileSystemObject Set A = Uusi FileSystemObject Dim D asemana, Dspace kaksoisjoukkona D = A.GetDrive ("C:") Dspace = D.FreeSpace Dspace = Pyöreä ((Dspace / 1073741824), 2) MsgBox "Asemalla" & D & "on" & Dspace & "GB vapaata tilaa" End Sub 

Vaihe 8: Suorita yllä oleva koodi saadaksesi selville alla olevan tuloksen,

VBA FileSystemObject - esimerkki 4

Nyt luodaan uusi kansio määritettyyn sijaintiin FSO: n avulla.

Vaihe 1: Aloitetaan jälleen toisella osaprosessilla seuraavasti:

Koodi:

 Sub Newfso2 () Loppu Sub 

Vaihe 2: Seuraakaamme samoja vaiheita ja luodaan esimerkki seuraavasti:

Koodi:

 Sub Newfso2 () himmentää A FileSystemObject -sarjana A = New FileSystemObject End Sub Sub 

Vaihe 3: Nyt käytämme Luo kansio -menetelmää uuden kansion luomiseen määritettyyn sijaintiin,

Koodi:

 Sub Newfso2 () himmentää A kuin FileSystemObject Set A = Uusi FileSystemObject A.CreateFolder ("C: \ Users \ Public \ Project \ FSOExample") End Sub 

Vaihe 4: Suorita yllä oleva koodi ja katso tulos työpöydällä seuraavasti:

Olemme luoneet onnistuneesti uuden kansion määritettyyn sijaintiin.

Muistettavat asiat VBA FileSystemObject -sovelluksessa

  • FSO on API-sovellustyökalu.
  • FSO ei ole oletuksena käytettävissä VBA: ssa.
  • FSO: n avulla voimme luoda, muokata tai lukea tiedostoja ja kansioita tietokoneella.
  • Voimme käyttää FSO: ta myös verkkoasemamme.

Suositellut artikkelit

Tämä on opas VBA FileSystemObject -sovellukseen. Tässä keskustellaan siitä, kuinka VBA FileSystemObject -sovellusta voidaan käyttää Excelissä, sekä joitain käytännöllisiä esimerkkejä ja ladattavaa Excel-mallia. Voit myös käydä läpi muiden ehdottamiemme artikkeleidemme -

  1. Täydellinen opas VBA-työkirjaan
  2. Epäsuora toiminto Excelissä
  3. VBA-laskentatoiminto
  4. Excel XOR -toiminto

Luokka: