ToJeJedno
30.12.10,11:22
Dobry den,

potrebujem importovat txt subory do excelu a nasledne vyberat z textu hodnoty do roznych poli. Mam vytvorene macro, ktore mi otvori explorer a ja si vyberiem txt subor, kde ale musim manualne nastavit separatory. Ked import prebehne, subor sa zobrazi v novom exceli a nie v tom, odkial som macro spustal.. netusim preco. Prikladam excel, kde mam macra nastavene pre kazdy txt subor osobitne. Vedeli by ste mi niekto poradit ako ten proces trocha urychlit..? Nie som moc zdatny- napokon to uvidite aj v tych macrach.. : Seratary su oznacene na kazdom sheete osobitne "," ":" "_ (space)"
Dakujem.

IB
Zoltan Miklos
30.12.10,11:12
nazvy textovych suborov budes mat ten isty, alebo v nich budes mat nejaky timestamp? mohol by si skusit vytvorit data connections na jednotlive subory. tuto moznost mas v Data ribbone.
ak mas datove spojenie na textovy subor, staci ti refreshnut sheet a automaticky sa ti nacitaju data z textaku a prebehnu vsetky dodatocne kalkulacie poli. posli prosim priklad vstupnych datovych suborov. d.
z.
ToJeJedno
30.12.10,11:19
bohuzial nazvy adresarov su rozdielne.. %name%-%date%, cize server-122510 . Subory sa volaju rovnako
PaloPa
30.12.10,14:32
Dobry den,

potrebujem importovat txt subory do excelu a nasledne vyberat z textu hodnoty do roznych poli. Mam vytvorene macro, ktore mi otvori explorer a ja si vyberiem txt subor, kde ale musim manualne nastavit separatory. Ked import prebehne, subor sa zobrazi v novom exceli a nie v tom, odkial som macro spustal.. netusim preco. Prikladam excel, kde mam macra nastavene pre kazdy txt subor osobitne. Vedeli by ste mi niekto poradit ako ten proces trocha urychlit..? Nie som moc zdatny- napokon to uvidite aj v tych macrach.. : Seratary su oznacene na kazdom sheete osobitne "," ":" "_ (space)"
Dakujem.

IB

Nové makro XL 2007 - stručne:
1) nahranie makra: Karta "Zobraziť" / Makrá / Zaznamenať makro
- Excel bude zanamenávať každý krok od tohoto momentu až po zastavenie makra (ikona - modrý štvorček v spodnej lište)
2a) import TXT: Karta "Údaje" / Získať externé údaje / Z textu
2b) ... alebo pre jednorázové otvorenie TXT do nového zošita: CTRL+O, typ súboru TXT

3) "vyklikať" podrobnosti importu, napr.:
- oddeľovač bodkočiarka (alebo čiarka, tabelátor ... - to je riešenie tvojho pracného prehadzovania - v kóde potom napr. Space:=False, Other:=True, OtherChar:=":"),
- označenie stĺpcov, ktoré sú textové, ktoré dátumové ...
- TIP 1: označiť viac stĺpcov rovnakého typu (napr.text) - klik na Prvý – stlačiť a podržať SHIFT – klik na Posledný
- TIP 2: !!! čísla nechať typu "General" a ak sú v zdrojovom súbore des. bodky ale v Exceli fungujú des. čiarky,
nastaviť Decimal Separator – bodku (tlačidlo Spresniť - Advanced)
5) zastaviť makro.

Makro možno potom kedykoľvek použiť:
1) ALT+F8 a zo zoznamu makier vybrať to vhodné
2) ... alebo priradiť k nejakému tlačidlu
3) tlačidlo "Run / Spustiť" sa spustí vykonanie makra
4) cez tlačidlo "Edit / Upraviť" sa dá dostať ku kódu príslušného makra (resp. cez ALT+F11)
a tu dá upraviť napr. cesta alebo názov TXT (resp. CSV či iných) súborov.

Pre otváranie len TXT súborov, možno použiť volanie zabudovaných dialógov.
Tvoja open fn môže potom vyuzerať takto:


Sub GetFile()
Dim FName As Variant, strThatWorkbook As String
'Open a daily file from hard drive
'Application.FindFile ("*.txt") 'Display Filefind Form GetOpenFile doens't open it - darn
FName = Application.GetOpenFilename("txt Files (*.txt), *.txt")
Workbooks.OpenText Filename:=FName
strThatWorkbook = Windows.Application.ActiveWorkbook.Name 'Remember it's name
End SubPríklad - príloha
Pokec - Excel - volanie zabudovaných dialógov (http://www.pc-prog.eu/phpBB3/viewtopic.php?f=16&t=110&start=0)

Palo

pre XL 2003 viacej riešení tu:
Excel - automatizácia importu csv súborov (http://www.pc-prog.eu/phpBB3/viewtopic.php?f=5&t=127)
Excel 2003 - import více soborů pomocí makra (http://www.pc-prog.eu/phpBB3/viewtopic.php?f=5&t=184)
Excel, makro - import údajov (http://www.pc-prog.eu/phpBB3/viewtopic.php?f=5&t=170)