Vie alue CSV -muotoon (erotettu tekstitiedosto) - VBA -koodiesimerkkejä

Tallenna alue CSV -tiedostoon

Ratkaisu #670 alueen viemisestä rajattuun tekstitiedostoon.

Tämä on kätevä vaihtoehto käyttää Excelin oletustapaa tallentaa laskentataulukko tekstitiedostona tai CSV -erotettuna tiedostona valitsemalla "tallenna nimellä", kun:

1. Käytät mallia ja haluat viedä vain tiedot paitsi otsikot ja muut sekalaiset asiat

2. Samoin saatat haluta viedä vain osan tietojoukosta

3. Haluat tallentaa tiedoston mukautetulla erottimella, joka voi olla sovelluksellesi ainutlaatuinen.

Jos sinun on tehtävä 1,2 tai 3, seuraavanlainen toiminto voi auttaa. Se hyväksyy vientialueen, tiedoston tallennussijainnin ja erottimen, jolla haluat erottaa tietosi, ja tallentaa tiedot määritetyn mukaisesti.

Näin voit kutsua funktion ExportRange:

1234567891011 AlipuheluVienti ()'ExportRange (alue, missä, erotin)Soita ExportRange (Sheet1.Range ("A1: C20"), _"C: mark.txt", ",")End Sub

Kerro ensin funktiolle alue, jonka haluat viedä, ja sitten minne se viedään, kuin käytettävä erotin. Tarvitset myös toiminnon ExportRange, tässä se on:

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 Toiminto ExportRange (WhatRange As Range, _Missä merkkijonona, erottaja merkkijonona) merkkijononaDim HoldRow As Long '-testi uudelle rivimuuttujalleHoldRow = WhatRange.RowDim c As Range 'silmukan läpi alueen muuttujaJokaiselle c WhatRangessaJos HoldRow c.Row then'lisää rivinvaihto ja poista ylimääräinen erotinExportRange = Vasen (ExportRange, Len (ExportRange) - 1) _& vbCrLf & c.Teksti ja erotinHoldRow = c.RowMuuExportRange = ExportRange & c.Text & DelimiterLoppu JosSeuraava c'Leikkaa ylimääräinen erotinExportRange = Vasen (ExportRange, Len (ExportRange) - 1)"Tapa tiedosto, jos se on jo olemassaJos Len (Ohjaus (Missä))> 0 SittenTapa missäLoppu JosAvaa Mihin liittää nimellä 1 ja kirjoita uusi tiedostoTulosta numero 1, ExportRangeSulje #1Lopeta toiminto
wave wave wave wave wave