ascii2xls

13 отговора 315 прегледа
#1

ascii2xls

Zdraveite,


Triaabva mi speshno "Makros" za transformirane na

ascii2xls

triabva mi za da obrystam edni ascii failove ot izmervania v excel.

по принцип...как става това с vва?????

благодариа предварително

Отговор
в отговор на PAДУШ #2

Re: ascii2xls

Ето ти преправена версия на макрото което бях писал преди време пак в този клуб... То ще работи за всеки файл който може да се отвори от Ексел (comma separated, tab delimited и там всевъзможни)...

Zna4i eto kakwo trqbwa da naprawi6:

Kopira6 wsi4ki failowe koito iska6 da convert-be6 w nowa direktoriq (zadylvitelno ima6 backup, da ne stane nqkoq gre6ka :). Puska6

si Excel, Tools -> Macros -> VB Editor. Wyw VB Editor si izbira6 koito i da e modul (ili si prawi6 now) i tam paste-wa6 slednoto macro:


Sub Macro1_AnyFile2XLS()

myFolder = InputBox("Enter the full path to the documents folder (i.e. C:\Docs\ToConvert\)")
If Right(myFolder, 1) <> "\" Then myFolder = myFolder & "\"

On Error Resume Next
MkDir myFolder & "oked\"
On Error GoTo 0

myFile = Dir(myFolder, vbNormal)
Do While myFile <> ""

Workbooks.Open Filename:=myFolder & myFile
ActiveWorkbook.SaveAs Filename:= _
myFolder & "oked\" & Left(myFile, InStrRev(myFile, ".") - 1) & ".xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
myFile = Dir
ActiveWorkbook.Close
Loop
End Sub


Posle 6traka6 wyrhu koda na Macro1_AnyFile2XLS i 6traka6 Play buton4eto ot toolbar-a.

Kakto move6 da widi6 w koda, pyrwo macro-to 6te te pita za pylen path do direktoriqta s failowete za convert-wane, sled koeto za

wseki fail w direktoriq go otwarq, save-wa go kato xlNormal (xls) w poddirektoriq "oked" i go zatwarq.

Епа, това е моето хоби... [линк]
Отговор
в отговор на fiffy #3

Novi Sheets

Ne moga da razbera ZASTO KOMANDATA:
XLObj.Worksheets.Add( )
...ne raboti kato se sloji kato makro v excela.

Kato samostoiatelen skript raboti, no v makroto ne - zaso???

Отговор
в отговор на fiffy #4

Re: ascii2xls

Ще му кажа че е ANY файл, ми ако е аски файл който ексела не може да разчете, в смисъл не е кома и прочие сепарейтид? На колегата ще му дам насока : Workbooks.OpenText
Няма да обяснявам как работи щото ще изчезне тръпката, ама в хелпа го има продробно описано.
На база на тая пущина работи импорта на текстови аски файлове.
В аксес където според мен тия данни ще се чувстват по-добре се използва DoCmd.TransferText
Пък в висуалния базик има едно много ценно нящо SPLIT му викат, също е много полезно за тая цел - буха данните във вариант, ама вие сте големи хора ще си ги видте тия работи.

Наведи главата защото прелитам ниско с асконата !!!
Отговор
в отговор на Ascona83 #5

Re: ascii2xls

Писна ми от специалисти дето незнаят за какво говорят!

Епа, това е моето хоби... [линк]
Отговор
в отговор на fiffy #6

Re: ascii2xls

Я пак прочети и то по внимателно какво съм писал и после пак ми напиши нещо!!!

Наведи главата защото прелитам ниско с асконата !!!
Отговор
в отговор на fiffy #7

Re: ascii2xls

Абе Фифито, намери се малко свободно време и пуснах твоя код в ексел, ама за съжаление се оказа точно това дето си представях и без да го пускам!!!
Понеже много знаеш може ли да ми обясниш къв ми е кяра от миризливия ти код дето пъха всеки ред от файла в една клетка, без значение какво има в него?!?!?!?
Ти имаш ли идея за какво пита човека? Да си мяркал някога аски файл с данни снесен от програма? Пък това че не си вкарвал аски файл с код в ексел си личи от далеч!!!
Има начин да си вкараш аски файл в ексел все едно си му дал от меню опен текст файл, барабар с оределяне на сепаратор или ширина на колоната и този начин е който аз съм описал, а не това дето си изсрал без да се замислиш!!!
Айде недей давай определения кой какъв е щото някой си изкарват хляба с тия работи, други са учили за да имат тапия а по стила ти на писане едва ли си над 18 години и още нито хляб си изкарал нито пък си учил достатъчно!!!

Тъй като имам гфруб език ще замоля модератора първо да прочете обстойно и да пробва преди да ме трие!!!

АААА най-важното за фифито, забравих да ти кажа че факта че си пуснал тоя код като макрос е достоен за уважение в детската градина между 1-ва и 2-ра група, лятото като си в провинцията при баба ти, в клуба дето интернета е презз модем към мобиком!!! Там където ексела е един непознат софтуер с неясни функции, силно приличащ на канонична забрана на теорията за сферичност на земното кълбо!!! Когат се научиш да го подкараш като функция пак пиши в отговор на мои писания!!!
Забърши се щото се наака и миришеш бе сополанко!!!

Наведи главата защото прелитам ниско с асконата !!!

Редактирано от Ascona83 на

Отговор
в отговор на Ascona83 #8

Re: ascii2xls

Кода който съм дал прави точно това което казвам че прави - отваря всеки поддържан от ексел файл и го записва като xls формат. Никъде не съм казал нито пък съм планувал кода да parse-не определен файл, тъй като не ми е даден никакъв формат.

Последно като проверих бях над 18 и отдавна не ходя на село... Провери тук преди да си правиш грешните заключения: [линк].

И вбъдеще вместо да се опитаваш да си създаваш репувация като плюеш чуждите коментари, по-добре вземи напиши малко код за да разберат хората че можеш да пишеш и в крайна сметка да помогнеш...

Епа, това е моето хоби... [линк]
Отговор
в отговор на fiffy #9

Re: ascii2xls

Фифито, не се сърди ама аз мисля че досатъчно съм помогнал като съм написал как човека да си свърши работата, а ако му напиша и кода как да стане май няма да му помогна а ще му свърша работата!!!
Не че имам против да свърша нечия работа, ама все пак тук си помагаме а не си вършим един на друг работата. Наистина всичко което съм дал е напълно достатъчно човек да си отвори хелпа и да си прочете каквото му трябва, ше прощаваш ама и преводач няма да ставам. Да не говорим че има и хора като оная мома дето и е много лесно да програмира на ВБ, само дето бутона нищо не правел като го натиснела и после колко требвало да ни се плаща на програмистите.
Не ме смятай за назадничев щото имаш изказване и за дао-то и адо-то в друга тема, ама това което пиша е факт, не че съм като дърт даскал по информатика и си стискам ДБФ-а, ама си е както съм го написал!!!
Разпалих се първо щото от кода който си написал лъха на неопитност именно от това че липсва прихващане на грешките и най-вече от реда:
goto 0
С тоя ред ти сам се опрличаваш на стар даскал по програмиране който си държи на ДБФ-а щото има и по елегантни методи за излизане, като например EXIT SUB.
Разбирам че си го нахвърлял набързо кода, нямам против готу оператора, само дето честото му използване е като "нали разбираш" в българския уличен език, аместител за нещо за което нямаш подходящи думи.
Айде съм се заяждал, а и ти стига писа самоуверено, щото не само ти разбираш от ВБ!

Наведи главата защото прелитам ниско с асконата !!!
Отговор
в отговор на Ascona83 #10

Re: ascii2xls

Незная защо има толкова много хора в тези форуми които ги е страх да кажат аз разбирам от това но не разбирам от онова, а се опитват да създават впечатление че разбират от всичко...

Още по-трудно ми е да си обясня защо толкова много хора се изказват неподготвени и коментират теми които не разбират...

Предлагам ти пак да прочетеш какво си написал и след това да прочетеш какво прави On Error Goto 0 (и в случай че имаш нужда, прочети и за Exit Sub и се опитай да откриеш безкрайния брой разлики). За да ти спесят малко време:

On Error GoTo 0 disables error handling in the current procedure. It doesn't specify line 0 as the start of the error-handling code, even if the procedure contains a line numbered 0. Without an On Error GoTo 0 statement, an error handler is automatically disabled when a procedure is exited.

Епа, това е моето хоби... [линк]
Отговор
в отговор на fiffy #11

Re: ascii2xls

Ми и аз се чудя що не си признаеш вече че си постнал само за да се види че не си пропуснал темата!!!
Първо изключваш грешките, после кода ти става неуправляем и накрая ми даваш акъл какво значи гото 0, ама аз не пиша от вчера код и вероятно знам повече отколкото предполагаш, само се питам щот първо си ползвал при грешка да продължи и после изключваш грешките ами не си ги озключил направо!!! Някъде имаш логически прпуск.
Ако не си знаел за опентекст по-добре си кажи и признай че си научил нещо отколкото да продължаваш да ми твърдиш колко е добър безконтролния ти код дето си риплейсва файлове!!!
Занимавай си се с уеб страничките и когат някой каже нещо първо помисли, огледай се и тогава премини!!!
Май ти е по-високо самочувствието щот си учил в някакъв американски университет в което няма лошо, ама и ние българчетата не сме по-тъпи!!!
Има една българска приказка "Аман от критикари като туй магаре!!!", на теб оставям да кажеш чия е!!!
Пък спора ни дотук си остава все тъй непрогресивен и ти освен да говориш как някой хора нищо не разбирали не си тдал предложение превъзхождащо моето с каквото и да било!!! Друг е въпроса че аз съм написал как да си свърши работа човека и в аксес и в ВБ, освен в ексел и уорд.
Само да те питам ти някога компилирал ли си приложение с ексел? Не е невъзможно знаеш ли? Получава се едно нещо .xla!
Щото аз имам няколко такива дето работят, пък и няколко .mde имам зад гърба си.
Не крия че съм против опенсорс също така!!!
Стига си се правил на вездесъщ и престани с непродуктивните си писания. Аз не твърдя че знам всичко и въпреки че много рядко пиша в форума като напиша нещо значи е точно така както съм написал.

Наведи главата защото прелитам ниско с асконата !!!
Отговор
в отговор на Ascona83 #12

Re: ascii2xls

Ти май продължаваш да се изказваш неподготвен :)))

само се питам щот първо си ползвал при грешка да продължи и после изключваш грешките ами не си ги озключил направо!!! Някъде имаш логически прпуск.

Помисли малко преди да правиш глупави коментари... Няма никакъв логически пропуск и мисля че всички хора които пишат в този клуб могат да ти обяснят идеята на тази част от кода: целта на On Error Resume Next е ако съществува директорията oked, макроса да не даде грешка а да продължи нататък. След това Resume Next го изключвам за да позволя на макроса да показва грешки ако има такива (защото ако има, значи не би трябва да продължи). Мисли малко преди да критикуваш...

Ако не си знаел за опентекст по-добре си кажи

За OpenText не съм чувал, както не бях чувал и за ActiveWorkbook.SaveAs. Кода който съм дал е базиран на Record-нато макро с малки модификации. Никога не съм твърдял че разбирам от Ексел и макрота, но твърдя че кодя който съм дал решава проблема на човека по начина по който е описан.

ама и ние българчетата не сме по-тъпи

Аз лично се гордея че съм българин тук в щатите съм се убедил че българите са много по-интелигентен народ от доста други. Никога не съм подценявал българите, нито пък някога съм парадирал с това че уча в чужбина. Всъщност по-голяма част от хората в тези форуми не го знаят.

Друг е въпроса че аз съм написал как да си свърши работа човека и в аксес и в ВБ, освен в ексел и уорд

Аз искам да ти кажа че с това по никакъв начин не си помогнал. Никой не пита как се прави това в Аксес или ВБ. А ако човека знаеше как да използва OpenText ще да знае и как да си направи сам макроса и нямаше да задава въпрос тук.

Само да те питам ти някога компилирал ли си приложение с ексел? Не е невъзможно знаеш ли? Получава се едно нещо .xla!
Щото аз имам няколко такива дето работят, пък и няколко .mde имам зад гърба си.


Не съм компилирал приложение на ексел (въщност за пръв път чувам за това), нито пък съм се занимавал с Ексел проекти. Това обаче по никакъв начин не ми пречи да помогна на човека, или пък да ти покажа твоите грешки.

Епа, това е моето хоби... [линк]
Отговор
в отговор на fiffy #13

Re: ascii2xls

Добре прав си прекратявам спора!
Айде и със здраве, поне каза че не си чувал за опентекст!!!

Наведи главата защото прелитам ниско с асконата !!!
Отговор
в отговор на Ascona83 #14

Re: ascii2xls

Az deistvitelno ne formulirah pitaneto si mnogo dobre.
Kazvam si,che ne razbiram mnogo bez boi ;)))

V deistvitelnost mi triabvashe (a i vse-oste se oglejdam) VBS.
Iska mi se da moga da preobrazuvan proizvolno generiran ascii v pordreden txt ili xls ama tova mai e naistina dosta skypo udowolstwie (mnogo vreme).

Blagodaria vi za produktivnia spor - az pone taka nauchavam(zapomniam) po-dobre.
V sysnost triabva da zadobrea speshno s vsichkite VBA VBS i dr. zastoto v bydeste ste mi se naloji da pravia zadachki-zakachki s tezi raboti. V tozi smisyl ako imate i drugi kodove za podobni problemi bi bilo interesno.....pri men se poluchava slednoto: Gledam koda, razbiram go(ili pone taka si mislia) ama kato sedna da pisha hyyyyy....;))))

do pisane

Отговор