Adatok írása szöveges fájlba Excel VBA - Easy Excel makrók használatával

Tartalomjegyzék

Az alábbiakban megnézzük a programot Excel VBA hogy Excel tartományt ír egy CSV (vesszővel elválasztott értékű) szövegfájlba.

Helyzet:

Helyezzen el egy parancsgombot a munkalapon, és adja hozzá a következő kódsorokat:

1. Először deklarálunk egy String típusú myFile nevű változót, a Range típusú rng nevű objektumot, a VarVent típusú cellValue nevű változót, az Integer típusú i nevű változót és az Integer típusú j változót. Azért használunk itt Variant változót, mert a Variant változó bármilyen típusú értéket tartalmazhat.

Dim myFile mint karakterlánc, rng as Range, cellValue as Variant, i As Integer, j As Integer

2. Meg kell adnunk a fájl teljes elérési útját és fájlnevét.

myFile = Application.DefaultFilePath & "\ sales.csv"

Megjegyzés: A DefaultFilePath tulajdonság az alapértelmezett fájl elérési útját adja vissza. A fájl alapértelmezett helyének módosításához kattintson a Fájl fül Beállítások, Mentés parancsára.

3. Inicializáljuk az rng tartományobjektumot a kiválasztott tartományt.

Set rng = Kiválasztás

4. Adja hozzá a következő kód sort:

Nyissa meg a myFile -t a kimenethez #1 -ként

Megjegyzés: ez az utasítás lehetővé teszi a fájl írását. A kód további részében a fájlra #1 hivatkozhatunk. Ha a fájl már létezik, akkor törlődik, és új azonos nevű fájl jön létre.

5. Indítson el egy kettős hurkot.

I = 1 -re rng.Sorok.számlálása
Ha j = 1 Rng.Oszlopok.Szám

Megjegyzés: Az rng.Rows.Count a sorok számát adja vissza (ebben a példában 17) és az rng.Columns.Count az oszlopok számát adja vissza (ebben a példában 4).

6. Az Excel VBA a cellValue változóba írja a cella értékét.

cellValue = rng. Cellák (i, j). Érték

7. Adja hozzá a következő kódsorokat a cellValue értékének a szövegfájlba írásához.

Ha j = rng.Oszlopok.Szám
Írja be az 1, cellValue értéket
Más
Írja be az 1 -et, cellValue,
Vége Ha

Magyarázat: az If Then Else utasítás miatt az Excel VBA csak akkor kezd új sort (Write #1, cellValue), ha j egyenlő az oszlopok számával (a sor utolsó értéke). Az értékek vesszővel történő elválasztásához használja a Write #1, cellValue (vesszővel) parancsot.

8. Ne felejtse el bezárni mindkét hurkot.

 Következő j
Következő i

9. Zárja be a fájlt.

Bezárás #1

10. Válassza ki az adatokat, és kattintson a parancsikonra a lapon.

Eredmény:

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave