VBA GetOpenFilename | Kuinka käyttää GetOpenFilename-menetelmää VBA: ssa?

GetOpenFilename on menetelmä, joka on myös FSO: n attribuutti. Tätä menetelmää käytetään VBA: ssa etsimään tietty tiedosto tiedostonimellä ja valitsemalla se, tärkeä tekijä tässä menetelmässä on sen avaamiseen annetun tiedostonimen polku, me voi joko siirtää tiedostonimen polun funktiossa tai voimme pyytää käyttäjää esittämään tiedostopolun sen valitsemiseksi.

Excel VBA -sovellus. GetOpenFilename

On tilanteita, joissa meidän on käytettävä tiettyä tiedostonimeä, ja tämä voi olla mahdollista VBA-koodauksella. Tiedostoon pääsemiseksi meidän on mainittava myös kansion polku ja tiedostonimi sekä sen tiedostotunniste. Tiedostonimen saamiseksi monet kooderit antavat VBA-kentän vaihtoehdoiksi syöttää tiedostopolku ja tiedostonimi. Mutta tämä ei ole hyvä tapa harjoitella, koska kun esität syöttöruudun käyttäjän edessä, he eivät aina muista tiedostopolkua, taaksepäin viivoja erottaakseen yhden kansion toisesta kansiosta, tiedostojen nimiä ja tiedostojen laajennuksia . Tämä tekee käyttäjän antamasta tulosta vihamielisemmän ja lopulta kaikki ruuvataan, vaikka siinä olisi pieni välilyöntivirhe. Paras tapa on korvata syöttöruutu VBA: n menetelmällä nimeltä "GetOpenFileName".

Tässä artikkelissa näytämme sinulle, miten VBA GetOpenFileName -toimintoa käytetään tiedostonimen saamiseksi ilman virheitä.

Mitä GetOpenFilename tekee Excel VBA: ssa?

VBA: n "GetOpenFileName" avulla käyttäjä voi valita tiedoston tietokoneelta, jolla työskentelemme avaamatta tiedostoa.

"GetOpenFileName" -menetelmän avulla voimme itse asiassa esittää käyttäjän edessä valintaikkunan tiedoston valitsemiseksi tarvittavaan kansioon. "GetOpenFileName" kopioi tiedoston sijainnin sekä tiedoston nimen ja tiedostotunnisteen.

GetOpenFilename-syntaksi Excel VBA: ssa

Tutustu GetOpenFilename-menetelmän syntaksiin.

  • Tiedostosuodatin: Tässä argumentissa voimme määrittää, minkä tyyppiset tiedostot näytetään valittaviksi. Jos esimerkiksi mainitset "Excel Files, *. Xlsx", se näyttää vain Excel-tiedostot, jotka on tallennettu Excel-laajennuksella "xlsx", muita tiedostoja ei näytetä. Jos ohitat kaikenlaisia ​​tiedostoja, näyttöön tulee.
  • Suodata hakemisto: Tällä rajoitamme käyttäjän valitsemaan tiedostotyypin. Voimme luetteloida määritettävien suodattimien määrän Tiedostosuodatin-kohdasta.
  • Otsikko: Se näyttää valitun tiedoston valintaikkunan otsikon.
  • Painikkeen teksti: Tämä on vain Macintoshille.
  • Monivalinta: TOSI, jos haluat valita useita tiedostoja tai muuten EPÄTOSI. Oletusarvo on FALSE.

Esimerkki GetOpenFilenamesta Excel VBA: ssa

Alla on esimerkkejä VBA-sovelluksesta. GetOpenFilename.

Voit ladata tämän VBA GetOpenFilename Excel -mallin täältä - VBA GetOpenFilename Excel -malli

Kirjoitetaan koodi saadaksesi tiedoston nimi ja polkuosoite.

Vaihe 1: Käynnistä alirutiini.

Koodi:

 Sub GetFile_Example1 () End Sub 

Vaihe 2: Ilmoita muuttuja merkkijonoksi.

Koodi:

 Sub GetFile_Example1 () Himmennä FileName merkkijonon lopussa Sub 

Vaihe 3: Tälle muuttujalle määritämme GetOpenFileName.

Koodi:

 Sub GetFile_Example1 () Himmennä tiedostonimi merkkijonona FileName = Application.GetOpenFilename () End Sub 

Tästä lähtien olen ohittanut kaikki parametrit.

Vaihe 4: Näytä muuttujan tulos nyt viestiruudussa.

Koodi:

 Sub GetFile_Example1 () Himmennä tiedostonimi merkkijonona FileName = Application.GetOpenFilename () MsgBox FileName End Sub 

Suorita koodi nyt Excel-pikanäppäimen F5 kautta tai manuaalisesti, se näyttää alla olevan valintaikkunan tiedoston valitsemiseksi.

Valitsen minkä tahansa tiedoston ja napsautan ok.

Heti kun valitsin tiedoston, sain tällaisen VBA-viestiruudun. Se näyttää koko kansion polun ja valitun Excel-tiedoston nimen sekä tiedostopääte.

Kuten näemme yllä olevasta kuvasta, voimme nähdä kaikenlaisia ​​tiedostoja. Lisään nyt ensimmäisen parametrin, eli Tiedostosuodatin, nimellä "Excel Files, *. Xlsx".

Koodi:

 Sub GetFile_Example1 () Himmennä tiedostonimi merkkijonona FileName = Application.GetOpenFilename (FileFilter: = "Excel-tiedostot, *. Xlsx") MsgBox-tiedostonimi End Sub 

Jos suoritan tämän koodin F5-näppäimellä tai manuaalisesti, näen vain Excel-tiedostot, joiden laajennus on "xlsx".

Tällä tavoin voimme käyttää "VBA Application.GetOpenFileName" -menetelmää saadaksesi kansion polun sekä tiedoston nimi ja tiedostotunniste.


$config[zx-auto] not found$config[zx-overlay] not found