Napište data do textového souboru pomocí programu Excel VBA
Níže se podíváme na program v Excel VBA že zapíše rozsah aplikace Excel do souboru CSV (čárkami oddělené hodnoty).
Situace:
Umístěte na pracovní list příkazové tlačítko a přidejte následující řádky kódu:
1. Nejprve deklarujeme proměnnou nazvanou myFile typu String, objekt nazvaný rng typu Range, proměnnou nazvanou cellValue typu Variant, proměnnou s názvem i typu Integer a proměnnou s názvem j typu Integer. Zde používáme proměnnou Variant, protože proměnná Variant může mít libovolný typ hodnoty.
2. Musíme zadat celou cestu a název souboru.
Poznámka: Vlastnost DefaultFilePath vrátí výchozí cestu k souboru. Cesta ke složce, kterou vidíte při otevření nebo uložení souboru.
3. Inicializujeme objekt řady rng ve zvoleném rozsahu.
4. Přidejte následující kódový řádek:
Poznámka: toto prohlášení umožňuje zapisovat do souboru. Můžeme odkazovat na soubor jako # 1 během zbytku našeho kódu. Pokud soubor již existuje, bude smazán a bude vytvořen nový soubor se stejným jménem.
5. Spusťte dvojitou smyčku.
For j = 1 To rng.Columns.Count
Poznámka: rng.Rows.Count vrací počet řádků (17 v tomto příkladu) a rng.Columns.Count vrátí počet sloupců (4 v tomto příkladu).
6. Excel VBA zapíše hodnotu buňky do proměnné cellValue.
7. Přidejte následující řádky kódu pro zápis hodnoty cellValue do textového souboru.
Write #1, cellValue
Else
Write #1, cellValue,
End If
Vysvětlení: v důsledku příkazu If Then Else spustí Excel VBA pouze nový řádek (Write # 1, cellValue), když j se rovná počtu sloupců (poslední hodnota v řádku). Chcete-li oddělit hodnoty čárkou, použijte Psát # 1, cellValue (s čárkou).
8. Nezapomeňte uzavřít obě smyčky.
Next i
9. Zavřete soubor.
10. Vyberte data a klepněte na příkazové tlačítko na listu.
Výsledek: