< návrat zpět

MS Excel


Téma: VBA Excel export do TXT uvozovky rss

Zaslal/a 21.9.2020 19:29

Dobrý den,
jsem naprostý začátečník. Potřeboval bych poradit. Potřebuji uložit obsah listu do formátu TXT.
Zatím mám tohle:

Sub UlozitTXT()

Sheets("GPP").Select
CestaAdresare = ThisWorkbook.Path
soubor = CestaAdresare & "\" & "NahradTexty" & ".txt"
ActiveSheet.SaveAs soubor, FileFormat:= _
xlUnicodeText, CreateBackup:=False

Dim MojeCesta As String
Dim MujSoubor As String

MojeCesta = ThisWorkbook.Path
MujSoubor = "Pok1.xlsm"

Workbooks.Open MojeCesta & "\" & MujSoubor
Workbooks("Pok1.xlsm").Activate
Workbooks("NahradTexty.txt").Close SaveChanges:=True

End Sub

Export proběhne, ale mám problém s formátem textu, který obsahuje uvozovky (“). TXT potřebuji načítat do dalšího programu a ten má problém s uvozovkami.
Příklad:
"NAZ,pokus o export1"

Předem děkuji.
Petr.

Zaslat odpověď >

#048088
Lugr
Moc nechápu, bylo by lepší dát přílohu. Nicméně tady máte něco pro inspiraci.
Příloha: zip48088_export-to-txt.zip (18kB, staženo 28x)
citovat
#048089
avatar
Tož a čo tak teda najprv v zdrojovom súbore tie úvodzovky odstrániť?
A to Tvoje načítanie pôvodného a uzatvorenie nového by som riešil inak. Ejhle:
Sub UlozitTXT()
Cells.Replace What:="""", Replacement:=""
Sheets("GPP").Copy
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\NahradTexty.txt", FileFormat:=xlUnicodeText
ActiveWindow.Close (False)
End Sub
citovat
#048090
avatar
Keby si potreboval zachovať pôvodný excelovský súbor i s úvodzovkami, tak po exporte proste zdroj uzavri bez uloženia.
Ciže ak potrebuješ najprv urobiť v zdroji zmeny, urob ich, ulož nový stav (uloženie je možné zahrnúť na začiatok makra), exportuj(odstráni úvodzovky), uzavri zdroj bez uloženia(zabráni uloženiu zdroja bez úvodzoviek)citovat
#048091
avatar
Takže výsledný kód by vyzeral takto:
Sub UlozitTXT()
ActiveWorkbook.Save
Cells.Replace What:="""", Replacement:=""
Sheets("GPP").Copy
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\NahradTexty.txt", FileFormat:=xlUnicodeText
ActiveWindow.Close (False)
ActiveWorkbook.Close (False)
End Sub

(vrátane uzavretia zdrojového súboru bez uloženia, t.j. so zachovaním pôvodného obsahu i s úvodzovkami)citovat
#048092
avatar
Dobrý den,
neuvědomil jsem si nejednoznačnost svého dotazu.
Přikládám Excel.
Ve zdrojových buňkách se žádné uvozovky nevyskytují. Vznikají až při exportu do TXT.
Buňky ve zdrojovém listu (GPP) není prostý text, ale jedná se vzorec odkazující se na jiný list (spojení více buněk).

Popis Excelu:
Export spouštím tlačítkem z „Listu1“
Do pracovní složky, ve které je právě XLSM uložen by se měl vytvořit TXT soubor, který obsahuje data z listu GPP (bez uvozovek) pod názvem „NahradTexty.txt“.
Export do TXT je pouze mezikrok, veškerá další práce probíhá v původním Excelu (pod původním názvem a s původními daty).

Děkuji
Petr
Příloha: zip48092_nahradtexty.zip (15kB, staženo 25x)
citovat
#048093
avatar
Nahreď celý Tvoj kód týmto:

Sub UlozitTXT()
Sheets("GPP").Copy
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\NahradTexty.txt", FileFormat:=xlTextPrinter
ActiveWindow.Close (False)
End Sub
citovat
#048094
avatar
Velice děkuji. Funguje perfektně! 1citovat
#048095
avatar
Ať slouží 1citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje