[ avanturistik1 @ 07.01.2012. 13:47 ] @
Imam problem sa CSV fajlovima u excelu. Prilikom rucnog otvaranja u excelu se prikazuju kao tekst i svi su grupisani u jenoj koloni. U skladu sa tima sa napravio dalje macroe koji rade posao formatiranja, grupisanja, pretrage, brisanja, snimanja i zatvaranja fajla u xlsm formatu.
Problem nastaje kad pokrenem macro za otvaranje svih CSV fajlova iz jednog foldera. Tada ih excel automatski razbija na vise kolona, sto meni rusi koncepciju daljih makroa, koji su bazirani na prvom koraku gde sve treba da bude tekstualno kako se ne bi izgubile pocetne nule iz pojedinih celija.
Ima li neko resenje za to ili moram da radim rucno sve, a pritom imam preko hiljadu fajlova u pedesetak foldera. Malo je komplikovano pokretati makro na svakom fajlu pojedinacno, vec bih zeleo poktenuti macro samo nad tih pedesetak foldera.

kod koji koristim za otvaranje svih csv.fajlova iz odredjenog foldera:

Sub LoopFiles()
Dim MyFileName, MyPath As String
Dim MyBook As Workbook
MyPath = "F:\Un all\Comtrade\Vietnam - Copy\"
MyFileName = Dir(MyPath & "*.csv")
Do Until MyFileName = ""
Workbooks.OpenText MyPath & MyFileName
Set MyBook = ActiveWorkbook
Application.Run "Personal.xlsb!Macro19"
MyFileName = Dir
Loop
End Sub


Unapred sam zahvalan.

[Ovu poruku je menjao avanturistik1 dana 07.01.2012. u 16:18 GMT+1]
[ Brodoplovac @ 08.01.2012. 00:55 ] @
Nađi u help fajlu method OpenText:
expression.OpenText(Filename, Origin, StartRow, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo, TextVisualLayout, DecimalSeparator, ThousandsSeparator, TrailingMinusNumbers, Local),

pa onda eksperimentiši.
[ avanturistik1 @ 08.01.2012. 12:47 ] @
Citat:
Brodoplovac: Nađi u help fajlu method OpenText:
expression.OpenText(Filename, Origin, StartRow, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo, TextVisualLayout, DecimalSeparator, ThousandsSeparator, TrailingMinusNumbers, Local),

pa onda eksperimentiši.


To je to. VBA po defaultu pokrece funkciju OpenText sa globalnim setingovanjem gde je Local=False.
Samo sam mu to izmenio i sad radi.

Workbooks.OpenText MyPath & MyFileName, DataType:=xlDelimited, Local:=True.

Hvala .