Impartirea in timp real in Excel a sirurilor de caractere delimitate explicit

Rezolvare problema (Fix IT)

Situatie

Versiunile moderne de editoare de spreadsheet-uri dispun deja de instrumente pentru separarea datelor in functie de un caracter explicit utilizat in delimitare; totusi, acestea de obicei trebuie invocate manual. Daca avem nevoie de aceasta operatiune adesea, dispunem de functii pentru automatizarea procesului.

Solutie

Sa presupunem ca avem 4 siruri de caractere separate prin virgula, precum in exemplul de mai jos:

String #1 #2 #3 #4
asdasdassd,zxczxczxc,2131231321,iiiiiiiiiiiii asdasdassd zxczxczxc 2131231321 iiiiiiiiiiiii
1231231232,zxczxczxc,asdasdasda,qqqqqqqqqq 1231231232 zxczxczxc asdasdasda qqqqqqqqqq
asdasdasda,123123123,xzczxczxc,???????? asdasdasda 123123123 xzczxczxc ????????

In coloana String, avem 3 randuri cu cate 4 siruri de caractere; daca dorim sa le separam, in coloanele din dreapta fiecarui rand putem utiliza urmatoarele functii:
=LEFT(A2,FIND(“,”,A2)-1)
=MID(A2,FIND(“,”,A2)+1,FIND(“,”,A2,FIND(“,”,A2)+1)-FIND(“,”,A2)-1)
=TRIM(MID(A2,FIND(“,”,A2,FIND(“,”,A2)+1)+1,FIND(“,”,A2,FIND(“,”,A2,FIND(“,”,A2)
=TRIM(RIGHT(SUBSTITUTE(A2,”,”,REPT(” “,100)),100))

Bineinteles, exista multiple metode pentru obtinerea rezultatelor din coloanele #1 #2 #3 si #4, dar cel putin cele prezentate pot fi intelese cu usurinta; in primele 3 cazuri desi incepem procesarea de la stanga la dreapta, pentru ultima situatie pornim de la sfarsit si facem urmatorul artificiu: inlocuim virgula cu 100 spatii (sau mai multe daca sirul nostru de caractere este mai lung de atat), dupa care extragem ultimele caractere si indepartam spatiile.

Implementari si idei similare se pot regasi si in tutorialele de initializare pentru limbajele de programare precum C sau Python, caz in care putem sa ne inspiram din acestea chiar daca nu avem nevoie explicit sa scriem cod.

Tip solutie

Permanent

Voteaza

(0 din 0 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?