[ Pentagon @ 15.12.2011. 11:25 ] @
Ljudi pomagajte.

Imam problem u excell-u

U excell tabeli imam 6 kolona od kojih treba svaku da ograničim na određenu dužinu i vrstu i to :
1. dužina 8, numerika
2. dužina 1, numerika
3. dužina 6, numerika
4. dužina 8, numerika
5. dužina 35, alfa
6. dužina 18, numerika

Kada to budem imao, treba da je exportujem u fajl.txt tako da mi svaki string bude dužine 76 karaktera(odnosno sve to zajedno), ja sam uspeo međutim kada otvorim txt fajl, podaci su mi odvojeni TAB-om, a to nebi smelo.

Inače radi se o spisku lica koji treba periodično da dostavljam da se importuje u neke baze i izbegne pojedinačni unos.

Unapred hvala.

Pozdrav!
[ ib.kroki @ 15.12.2011. 12:27 ] @
Ako je u txt fajlu problem tab, da li ti može pomoci ubacivanje sedme kolone gde bi spojio sve podatke iz kolona, pa na toj koloni izvrsio COPY, a zatim PASTE SPECIAL, VALUE. Posle ove akcije mogao bi izbrisati šest kolona, pa eksportovati fajl sa novostvorenom kolonom.
Nije neko rešenje, ali mislim da bi moglo pomoći.

P.S.
A za nas ostale korisnike mogao bi pojasniti kako si ograničio dužine stringova u kolonama. Može nekad nekom biti od koristi.
[ rudy_kv @ 15.12.2011. 12:46 ] @
Ovo za formatiranje duzine stringa, to ne bih znao. Ali sto se tice tabova i razmaka tu mozes da u meniju Save As, izaberes ekstenziju .prn (onda su razmaci su a ne tabovi) a dobijeni fajl isto mozes da otvaras sa Notepad-om, WordPad-om, Word-om...
[ Jpeca @ 15.12.2011. 12:51 ] @
Formiraš (na posebnom listu) novu kolonu koja će biti "zbir" svih navedenih


Onda tu kolonu eksportuješ.

Za nadovezivanje teksta koristiš operator &

Numeričku vrednost pretvaraš u tekst sa određenim brojem karaktera pomoću funkcije TEXT. Npr.

Code:
=TEXT(A2,"00000000")


prebacuje numeričku vredonst u tekst sa vodećim nulama npr. 236 u "00000236"

Tekst popunjavaš sa blanko znacima do potrebne dužine sa
Code:
=LEFT(E2&REPT(" ",35),35)
[ ib.kroki @ 15.12.2011. 19:47 ] @
@Jpeca
Možeš li pojasniti ovo za popunjavanje teksta.

Code:
=LEFT(E2&REPT(" ",35),35)
[ 3okc @ 15.12.2011. 20:09 ] @
Office pruža vrlo detaljno objašnjenje za svaku od funkcija, samo kada bi pogledao u HELP.

REPT() umnožava pojedinačni karakter navedeni broj puta (repeat).

Možda će ti biti jasnije kada do istog rezultata dođeš na drugi način:

Code:
=E2 & REPT(" "; 35 - LEN(E2))
[ FOX028 @ 15.12.2011. 20:13 ] @
Citat:
ib.kroki: @Jpeca
Možeš li pojasniti ovo za popunjavanje teksta.

Code:
=LEFT(E2&REPT(" ",35),35)


npr

u E2 je podatak FORUM i na tu rec dodaje 35 praznih mesta " " funkcijom REPT a onda funkcijom LEFT uzima prvih 35 karaktera od toga znaci FORUM i joe 30 karaktera, sto znaci da 5 otpadaju.

Mislm da je tako 99%

http://www.ic.ims.hr/office/excel2003/funkcije/tekstualne/left.html

http://www.ic.ims.hr/office/excel2003/funkcije/tekstualne/rept.html
[ ib.kroki @ 15.12.2011. 23:06 ] @
^ Ne 99%, već 101%.
:)

Odlično si mi pojasnio!

Znam ja obe komande (left, rept) ali sam se zaglupeo i nisam shvatio kombinaciju.

Druga kombinacija koju je napisao @3okc jasna mi je u potpunosti, ali ovu "munju" koju je postavio @Jpeca nisam mogao da ukapiram.

Ideja fenomenalna, a mene je sad sramota kako sam blejao u ovo kao ovca i ne mogu da verujem šta nisam razumeo.
:)

HVALA!!!
[ Jpeca @ 16.12.2011. 10:33 ] @
Ako je već akademska diskusija u pitanju, pošto se korisnik koji je otvorio temu ne javlja da pojasni šta je tačno hteo, ajde još jedan kratak komentar.

Formula koju je dao 3okc je logičnjija, jer radi zdravo razumski - proveri koliko karaktera fali do potrebne dužine, pa u ostatak upiši blankove.

Prva formula (bez LEN) je nešto kraća - nije zanemarljivo ako je adresa ćelije na drugom listu - ali to je manje bitno. Bitna razlika je u situaciji kad je originalni tekst duži od 35 karaktera (potrebne dužine). U tom slučaju LEFT će odkinuti prvih 35 karatera i to vratiti. U slučaju formule bez LEFT vratiće se ceo string koji može da bude i duži od 35 karaktera. E sad šta je potrebno u konkretnom slučaju i da li se vrši validacija prilikom unosa (što bi bilo najbolje) to je već druga priča.
[ ib.kroki @ 16.12.2011. 11:04 ] @
Da se nadovežem na priču, kad već ima raspoloženih za dobra pojašnjenja.
Za ograničenje od npr. 8 numerika pada mi na pamet da postavim validaciju za broj u rasponu od 0 do 99999999.
A kako se može postaviti validacija za max 35 text karaktera?
[ 3okc @ 16.12.2011. 11:14 ] @
Ograničeni unos mora zadovoljiti uslov koji ćeš zadati u validaciji, formulom. To je jednostavno

Isto bih uradio i kada se radi o ciframa (LEN<8) samo bih dodao proveru da li se radi o broju (ISNUMBER).
[ FOX028 @ 16.12.2011. 11:15 ] @
pa u Data Validation za kriterijum odaberes Custum i u mestu za formulu ukucas =LEN(A1)<=5 ili ukucas adresu nekog drugog polja
[ Jpeca @ 16.12.2011. 11:33 ] @
Ili još lakše koristiš ugrađenu validaciju za dužinu teksta u okviru Data Validation
[ ib.kroki @ 16.12.2011. 11:40 ] @
Hvala ljudi!

Meni mozak ovih dana radi po sloganu "Što jednostavno kad može komplikovano".