problema in excel
Last Updated: Jun 13 2017 21:56, Started by
cristianraduca
, Jun 12 2017 17:18
·
0
#19
Posted 13 June 2017 - 13:13
colombo2003, on 13 iunie 2017 - 12:52, said:
Nu vezi ca s-a speriat si a disparut? Articolul este interesant, dar de ce sa apeleze la tool-uri sau sa il pui sa faca fct (e clar ca nu stie, ca altfel n-ar mai fi intrebat) cand se poate face si simplu? @iniator: despre ce versiunea de Excel vorbim? Pai nu trebuie sa stie VB, nici eu nu stiu. Doar da copy-paste la definitia functiei exact ca in articol. Nici nu mi-am batut capul sa inteleg ce-i acolo. Si alta solutie mai simpla ai? |
#20
Posted 13 June 2017 - 13:14
Si ce te faci daca rezultatul intors este foarte lung (cu multe arii, chiar daca sunt prescurtari)? Tu le mai vrei si pe orizontala neaparat?
Te intrebam pentru ca ti-am gasit si eu o solutie, dar asteptam sa raspunzi la intrebarile de mai sus. Te deranjeaza daca trebuie sa "refaci" de fiecare data formula (daca apar sau dispar linii din table)? |
#21
Posted 13 June 2017 - 13:31
@colombo2003 - nu cred ca ar fi o solutie rea sa refaca manual de fiecare data formulele, iar cerinta nu e sa aiba pe coloane sau pe randuri ariile alea. deci pot fi pe oricare variante. poti sa imi spui cum zici tu ca se poate rezolva, iar deseara analizez ambele optiuni
|
#22
Posted 13 June 2017 - 13:35
Intr-o celula poate sa aiba 32mii de caractere. Evident nu o sa poata sa le afiseze pe toate. Daca depasteste valoarea asta nu o sa-i mearga indiferent de formula. Nici nu cred ca exista o solutie sustenabila in excel din cauza limitarilor si al volumului. Caz in care cred ca trebuie migrat in access.
Daca are multe ID-uri, nu cred ca e o problema. colombo2003, on 13 iunie 2017 - 13:14, said:
Te deranjeaza daca trebuie sa "refaci" de fiecare data formula (daca apar sau dispar linii din table)? De ce trebuie sa refaci formula daca se modifica liniile din tabel? Definesti aria pe toata coloana A:A sau B:B. Sau te referi la solutia ta? |
#23
Posted 13 June 2017 - 13:37
#24
Posted 13 June 2017 - 13:40
poti incerca cu o array formula, de genul asta, ctrl+shift+enter
=IF(ISERROR(INDEX($A$1:$B$15;SMALL(IF($A$1:$B$15=$D$2;ROW($A$1:$B$15));ROW(1:1));2));"";INDEX($A$1:$B$15;SMALL(IF($A$1:$B$15=$D$2;ROW($A$1:$B$15));ROW(1:1));2))trasa in jos, nu'ti ramane decat sa concatenezi rezultatele cand se cauta un alt id, in casuta d2 se recalculeaza rezultatele inclusiv concatenarea |
#25
Posted 13 June 2017 - 13:50
colombo2003, on 13 iunie 2017 - 13:37, said: Pai si cu ce-l ajuta? El are nevoie sa-i concateneze intr-o singura celula toate valorile din coloana arie functionala care au acelasi ID. Vairanta asta reda in celule diferite inregistrai fiacre valoare individuala din arie functionale pentru un ID si da eroare cand le epuizeaza pe toate. El are nevoie de o functie similara cu SUMIFS, COUNTIFS, dar in loc sa faca suma sau sa numere trebuie sa concateneze. Nu exista functia asta in execel, d-asta trebuie definita. LE: O data definita, functia si parametrii de cautari, nu mai trebuie modificata. Daca se modifica continutul coloanelor A si B (ID si arie functionala), se actualizeaza si rezultatul returnat de formula. Edited by un_dac, 13 June 2017 - 13:52. |
#26
Posted 13 June 2017 - 13:51
Apoi nu-i mai ramane decat sa faca o concatenare a rezultatelor .
Edited by colombo2003, 13 June 2017 - 13:52. |
#27
Posted 13 June 2017 - 13:56
colombo2003, on 13 iunie 2017 - 13:51, said:
Apoi nu-i mai ramane decat sa faca o concatenare a rezultatelor . pai si daca are 1000 de rezultate pentru un sigur ID? Ce a rezolvat? Fix asta vrea initatorul sa evite, sa nu stea la ficare sa le concateneze manual. Si decat interogarea aia, nu era mai simplu daca copia valorile si elimina duplicatele? Varianta propusa de sorin face concatenarea direct Edited by un_dac, 13 June 2017 - 13:57. |
#28
Posted 13 June 2017 - 14:07
Pana la urma nu spune nicaieri ca vrea concatenare.
Iar daca sunt rezultate prea multe, le poate afisa pe verticala. Eu cred ca solutia oferita de mine i-ar putea rezolva problema. Trebuie insa sa fie atent la rage-ul din formula (sa nu exista ulterior intregistrari care depasesc acest range; de aceea zicea, de o eventuala verificare si actualizare). Sa vedem ce spune initiatorul. |
|
#29
Posted 13 June 2017 - 14:15
colombo2003, on 13 iunie 2017 - 14:07, said:
Pana la urma nu spune nicaieri ca vrea concatenare. Ba da: cristianraduca, on 12 iunie 2017 - 17:18, said:
- As vrea sa aduc toate ariile functionale ale unui ID intr-o singura celula, concatenandu-le, sau ceva asemanator. Eu ma bucur ca a deschis initatorul topicul asta. M-am confruntat si eu o data cu problema asta insa mi-a fost prea lene sa gasesc o solutie atunci mai ales ca aveam cateva inregistrari. |
#30
Posted 13 June 2017 - 14:38
O variantă ne-elegantă, dar rapidă, ar fi:
- Creezi un pivot în formă tabulară din tabelul tău, cu ID-ul și aria ca rînduri (elimini sub-totalurile) - Copiezi conținutul în Word (ca text) - Înlocuiești Enter Tab (^p^t) cu Blank sau orice altceva (virgulă, liniuță etc.). - Copiezi rezultatul înapoi în Excel |
#31
Posted 13 June 2017 - 15:41
Guys, nu va certati pe topicul meu! Functioneaza prima varianta, de la Sorin. Deci sunt ok. Ne-elegant ar fi fost si un pivor, apoi if cell=1, sa retuneze capul de coloana (randurile ar fi ID, iar coloanele ar fi ariile) si concatenam apoi. Dar era ne-elegant. Asta gasesisem eu inca de la inceput
|
#32
Posted 13 June 2017 - 15:56
Nu e vb man de cearta aici...
Si varianta mea functioneaza foarte bine, fara alte tooluri si cod vba. Pentru concatenare, foloseste atunci comanda =TEXTJOIN(",",TRUE,range_ul tau) si gata. Fara CONCATENATE, TRANSPOSE, CONCATENATEIF si alte minuni. Eventual cobori tot tabelul (inserezi linii) si pe prima linie pui ID-ul pe care il dau ca paramatru, si pe cea de a doua concatenarea. LE: Am atasat si un demo! Coloana de results de pe C (pe verticala) o poti ascunde (sau scrie cu culoare alba) sau trece in coloana ZZ sau alt sheet (cu modificarea referintelor corepunzatoare, daca chiar nu vrei sa le vezi in pagina); dar sa modifici corespunzator si rangul din B. ATENTIE la modificarea fomulei, in range. Acum sunt intregistrari doar pana la linia 20. Attached FilesEdited by colombo2003, 13 June 2017 - 16:25. |
#33
Posted 13 June 2017 - 21:56
|
Anunturi
Bun venit pe Forumul Softpedia!
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users