Consulting

Page 1 of 2 1 2 LastLast
Results 1 to 20 of 22

Thread: EXCEL munkalapok osszefesulese (HUN)

  1. #1

    Question EXCEL munkalapok osszefesulese (HUN)

    Sziasztok!

    Megold?st keresek az al?bbi probl?m?ra:

    Van egy f?jlom, 2 munkalappal. Mind a 2 munkalapban k?l?nb?ző adatok vannak, de a k?t munkalap sorait egy azonos?t? ?rt?k alapj?n ?ssze lehet kapcsolni.

    A feladatom az, hogy egy harmadik mukalapra m?solja ?t a k?z?s azonos?t?val rendelkező rekord ?sszes adat?t.
    pl:
    • munkalap1 azonos?t? n?v sz?lidate lakc?m
    • munkalap2 azonos?t? ad?sz?m TAJ sz?m
    • eredm?ny- (ezt szeretn?m el?rni) azonos?t? n?v sz?lidate lakc?m ad?sz?m TAJ sz?m
    A makr?s megold?s is j?het, csak ahhoz nem nagyon ?rtek.
    ?s pof?tlans?gnak tartan?m a magam r?sz?ről, ha k?sz k?dot k?rn?k.
    De megpr?b?lkozom vele... főleg ha konkr?t seg?ts?get kapok..

    A makr? eset?ben valahogy a k?vetkező k?ppen kellene műk?dnie:
    • 1. lek?ri, hogy h?ny munkalap van az adott f?jlban (mert lehet t?bb is, nem csak 2)
    • 2. k?rje be, hogy melyik oszlopban tal?lhat? az azonos?t? mező.
    • 3. Az azonos?t?kat tartalmaz? oszlop tipus?t alak?tsa ?ltal?nos form?tumra - mert van amelyik csak sz?mot tartalmaz, van amelyik sz?mot ?s betűt is.
    • 4. esetleg k?rdezze meg, hogy mely oszopokra van sz?ks?gem a munkalapokr?l.
    • 5. vesse ?ssze az ?sszes munkalapon az azonos?t?kat, ?s egyez?s eset?n m?solja ?ssze a kiv?lasztott oszopok tartalm?t - egy k?l?n munkalapra.
    • 6. m?solja ki azokat a rekordokat is egy k?l?n munkalapra, ahol nem tal?lt egyez?st, de sz?rja be az első cell?ba, hogy melyik munkalapr?l val? az adott rekord.
    Ez ?gy le?rva nem tűnik annyira bonyolultnak olyan szakemberek sz?m?ra, akik nap mint nap ezzel foglalkoznak, de ?n azt sem tudom, hogyan fogjak hozz?. Tov?bb? eleve probl?m?t okoz az is, hogy hogyan szűrjem ki az azonos adatokat tartalmaz? oszlopokat - hogy ne sokszoroz?djanak.
    Amit p?ldak?nt eml?tettem, az egy lesark?tott feladat volt, mert ha f?ggv?nnyel megoldahat?, akkor azt tudn?m alakalmazni.

    A val?s?gban az egyes munkalapokon szereplő rekordok tartalmaznak azonos adatokat is - vagyis pl a n?v szerepel mindenhol. De mondjuk ez a legkisebb gond, legfeljebb kit?r?lgetem a nem kellő oszlopokat...

    K?sz?n?m a v?laszokat!
    Minden megold?s ?rdekel!
    emberke

  2. #2
    L?gy ?dv?z?lve a VBAX-on

    R?szben a f?rum lehetős?geit bemutatand?, r?szben a feleadat pontos?t?sa ?rdek?ben itt ez a k?t szubrutin.

    [vba]Sub hany_munkalap_van()
    MsgBox "A munkaf?zetben a munkalapok sz?ma: " & ThisWorkbook.Sheets.Count & " db."
    End Sub

    Sub azonosito_oszlopa()
    Dim C As Range
    Set C = ActiveSheet.Cells.Find("azonos?t?")
    If Not C Is Nothing Then
    MsgBox "Az azonos?t? mező a(z) " & C.Column & ". oszlopban van"
    Else
    MsgBox " Az azonos?t? mező nem tal?lhat?."
    End If
    End Sub[/vba]
    Csak azt akarom mondani, hogy az első k?t k?rd?sre automatikusan megadhat? a v?lasz, nem kell a felhaszn?l?nak k?rd?st feltenni. Azt is lehet, hogy a program csak azokat a munkalapokat dolgozza fel, amelyeknek az első sor?ban az "azonos?t?" sz? szerepel. ?ltal?noss?gban, ha a feldolgozand? rekordokat tartalmaz? munkalapokat b?rmi megk?l?nb?zteti az egy?b (pl. lek?rdez?st tartalmaz?) munkalapokt?l, akkor azt k?ddal le lehet kezelni, ?s nincs sz?ks?g k?l?n felhaszn?l?i input-ra.

    A fenti k?dokat műk?d?s k?zben is megtekintheted, ha let?lt?d ?s megnyitod a csatolt f?jlt.

    Jimmy
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  3. #3
    Szuper!
    Teh?t ezek az ?rt?kek lek?rdezhetőek ?s elt?rolhat?ak.
    (kipr?b?ltam ?s műk?dik is..)

    Gondolom ezeket a k?sőbbiek folyam?n haszn?lni is fogjuk.
    Ha j?l sejtem, miut?n meg?llap?tottuk hogy melyik oszlop tartalmazza az azonos?t?t, a munkalapok adott oszlopaiban a form?tumot kell egys?gesre ?ll?tani. Az azonos?t?k betűk-sz?mok vegyesen, de van ahol csak sz?mb?l, van ahol csak betűből ?ll.

    J?l gondolom?

  4. #4
    Szeritem nem kell a form?tummal b?belődni. Sz?mot, betűt ?s a kettő elegy?t is lehet string-k?nt (karaktersorozatk?nt) kezelni. A form?tum ink?bb csak a megjelen?t?st takarja, a m?g?ttes tartalom elvileg ugyanaz.

    A k?vetkező v?laszt?si lehetős?g, amit k?n?lok, hogy a k?d m?s munkaf?zetben legyen, mint amit fel kell dolgozni. Pl. van egy Program.xls nevű f?jlod, ami az ?sszes makr?t tartalmazza. Amikor elind?tod, megnyitja a rekordok.xls f?jlt, amiben az adatok vannak, elv?gzi az adatfeldolgoz?st, ?s az eredm?nyt egy harmadik ?j munkaf?zetben t?rolja le. Vagy ak?r a rekordok.xls-ben, ?j lapon.

    Ez akkor hasznos, ha a rekordok.xls gyakran v?ltozik, ?s valaki m?s adja Neked. Hogy ne kelljen az aktu?lis f?jlba mindig bem?solni a k?dot.

    A tov?bbl?p?shez azonban, azt hiszem, sz?ks?g lenne konkr?tumokra. Az lenne a legjobb, ha felt?lten?d az adatf?jl m?solat?t, miut?n az adatokat kit?r?lted belőle. Az ?rdekel, hogy milyen az egyes oszlopok elhelyezked?se, van-e oszlopfejl?c, ha van, akkor h?nyadik sorban, minden lapon ugyanabban a sorban van-e, azt?n van-e olyan jellemző, ami alapj?n a feldolgozand? lapok felismerhetőek, avagy mindegyik munkalapot ?t kell n?zni? Meg hasonl?k.

    Idők?zben csin?ltam megint valamit.
    A mell?kelt munkaf?zetben l?thatsz egy megold?si vari?ci?t a k?rd?sed 4. pontj?ra. Ez m?r tal?n kicsit magasabb szint, de ha ?rdekel, sz?vesen elmagyar?zom.
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  5. #5
    Szia!
    L?tom k?ső ?jjelig dolgozt?l a k?don... valahogy egyszer majd egy s?r mellett megk?sz?n?m.
    Viszont ?n sem aluk?ltam , hanem előb?ny?sztam egy k?nyvet, ?s felfriss?tettem az eml?keimet, valamint v?gig gondoltam a "miket" ?s "hogyanokat".

    V?gig n?ztem azokat az excel t?bl?kat, amiket haszn?lnom kell. Ugyan el tudom k?ldeni, de nem igaz?n van sok ?rtelme, mert az adott feladatra - hogy milyen k?rd?st kell megv?laszolni - k?sz?lnek a lev?logat?sok egy k?zponti adatb?zisb?l, ?s ?n csak a lev?logat?sok eredm?ny?t kapom meg.
    Egy fix van, az az azonos?t? sz?m. Az ?sszes t?bbi adat v?ltozhat.
    Ugyan az azonos?t? sz?m minden f?jlban benne van, de lev?logat?sonk?nt v?ltozik az azonos?t?t tartalmaz? oszlop neve. Pl: az egyik f?jlban "ordernumberstring", a m?sikban "ordernuber" - nem ?rtam rosszul, kimaradt az "m" - harmadikat m?g nem kaptam, ez?rt arra gondoltam, hogy a felhaszn?l?t k?nytelenek lesz?nk kicsit megdolgoztatni.

    Sz?momra ez a vari?ci? tűnik egyszerűnek:
    1. a felh nyit egy ?j f?jlt, amibe ?tm?solja a lev?logat?s sor?n keletkezett ?s ?ltala haszn?lni k?v?nt munkalapokat.
    2. ?gy rendezi, hogy az azonos?t?kat tartalmaz? oszlop minden k?ppen előre ker?lj?n.
    3. a program nem automatiz?ltan sz?mol, hanem bek?ri az inform?ci?t, h?ny munkalappal kell dolgoznia - ez az?rt is jobb lenne ?gy, mert t?bbf?le vari?ci?ban lehetne az adatokat ?sszef?s?lni, ak?r t?bb munkalapra is - egy f?jlban.
    4. teh?t tudjuk, hogy az első oszlop fixen tartalmazza az azonos?t?t, illetve azt, hogy h?ny munklapon akarunk dolgozni... ?gy ezeket a mlapokat előlről lehet sz?moltatni. pl. az első h?rom-b?l ez meg ez kell, azt?n az első kettőből az meg az... stb. vari?lhat?.
    5. Vagy: indul?skot kapcsol?mezővel kiv?laszthatjuk, hogy melyik munkalapokon szeretn?nk dolgozni. - ez tal?n m?g jobb, mert akkor nem kell a felhnak rendeznie a mlapokat.
    Azt minden k?ppen j? ?tletnek tartom, hogy a makr? gyűjtem?ny?nk egy k?l?n f?jlban legyen.
    A t?bbit meg ?tn?zem m?g... ?s ha valamit nem ?rtek, akkor k?rdezek.

    A csatolm?ny a jelenleg haszn?lt munkalapokat tartlmazza.

  6. #6
    Szia

    Megpr?b?ltam elk?pzelni az elk?pzel?sedet
    Nem vagyok biztos benne, hogy mit ?rtesz kapcsol?mezőn. ?n jel?lőn?gyzetnek ford?tottam. Ha a feldolgozand? munkalapokat jel?lőn?gyzettel akarod kiv?lasztani, azt el?g k?r?lm?nyes lek?dolni. Ugyanis nem lehet előre tudni, hogy h?ny munkalap lesz. Az űrlapra tervez?skor feltehetek N db jel?lőn?gyzetet, de mi van, ha N+1 munkalap van? (Persze nem lehetetlen megoldani ezt sem, csak, mint mondtam, k?r?lm?nyes).

    Ez?rt javaslom a listapaneles megold?st, amit az előző HSZ-ban mutattam. Most, az ?jabb inform?ci?k t?kr?ben kicsit tov?bbfejlesztettem .

    Pr?b?ld ki, ?s k?v?ncsi vagyok, mit sz?lsz hozz?. Csak a Gomb1-et kell megnyomni. A program abb?l indul ki, hogy a feldolgozand? munkalapok 1 f?jlban vannak, ?s ?gy rendezve, hogy mindegyik lapon az azonos?t? az első mező.
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  7. #7
    "Behalok" Rajtad!
    Ezt nagyon j?l kital?ltad!!! Ez sokkal jobb, mint az ?n elk?pzel?sem.
    Ennyit sz?m?t az, ha valakinek van gyakorlata benne..

    Akkor most ?n k?rdezek:
    - milyen inform?ci?kra van sz?ks?g a tov?bbiakhoz?
    - miket kell meghat?rozni ?s lefix?lni?

    ?s le vagyok nyűg?zve!!!!

    (K?sz?n?m az eddigieket is!!!!)

  8. #8
    Szia

    Most egyelőre nem kell semmi. Szerintem ennyiből m?r ?ssze lehet ?tni egy első verzi?t, azt?n majd csinos?tgatunk rajta. (Most is csak az ?rdekelt, hogy eddig j?-e. )
    Nem annyira neh?z a dolog, csak nagyon ?sszetett, ?s pr?b?lok valami egyszerűbb algoritmust tal?lni a fav?g? m?dszer helyett. Azt?n lehet, hogy a v?g?n m?gis a fav?g? m?dszer lesz a nyerő.

    Ha minden j?l megy, olyan kedd magass?g?ban előrukkolok valamivel. Addig t?relmedet k?rem.
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  9. #9
    V?ltozott a terv.
    Elk?sz?lt az első verzi?. K?rlek, v?lem?nyezd
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  10. #10

    Question

    Szia!
    Teljesen j?l műk?dik eddig a dolog, minden tekintetben megfelelő ?s haszn?lhat? az elk?pzel?sed!
    Nem vagyok t?relmetlen.... hogyan is lehetn?k az, mikor ekkora seg?ts?get kapok Tőled?!

    Csak nyugodtan.... b?r kicsit haszn?lhat?bb m?don bele tudn?k sz?lni ebbe a munk?ba!!!

  11. #11
    ?ppen most pr?b?lom....

  12. #12
    Műk?dik!!!! Műk?dik!!!!! ?s j?l!!!! Ez elk?pesztő!!!
    A mai munk?m - nagy r?sze - k?szen is van!!!!!

  13. #13
    Quote Originally Posted by emberke70
    Műk?dik!!!! Műk?dik!!!!! ?s j?l!!!! Ez elk?pesztő!!!
    A mai munk?m - nagy r?sze - k?szen is van!!!!!
    H?t ennek ?r?l?k
    J? lesz ?gy, vagy van m?g k?v?ns?god?
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  14. #14
    Quote Originally Posted by JimmyTheHand
    H?t ennek ?r?l?k
    J? lesz ?gy, vagy van m?g k?v?ns?god?
    ?rik a s?r - m?r valahol

    Igen, m?g lenne itt 1-2 dolog.
    Az egyik oszloppal kapcsolatban, "adText" lenne m?g 2 hm.. hogy is nevezzem, dolgom. Ugyan egyszerűen meg tudom oldani f?ggv?nnyel, de h?tha ezt is lehet egyszerűs?teni.

    Az "adText" oszlop tartalmaz olyan inform?ci?kat, amit sz?veges f?ggv?nnyel szoktam megoldani.
    Ebben az oszlopban sz?veges inform?ci? tal?lhat?, ami alapj?n egy m?sik gyűjt?st is v?gzek.
    A sz?veges inform?ci?ban az első sz?k?zig gyűjt?m ki a szavakat.
    pl: AUDI A5 elad? szerv? blabla... ebből kell nekem az "AUDI".

    Ami lenne m?g, az annyi, hogy ha ez a sz?veges inform?ci? "sz?k?zzel" kezdődik, akkor trimmelje a sz?k?zt, ?s emelje ki k?l?n oszlopba az első sz?t.
    Valamint az ?sszes?t?s, amit k?zzel szoktam lesz?molni a k?sz t?bl?b?l, rendez?sekkel...
    "mell?kelem a f?jlt" - abb?l tal?n jobban ?rthető.

    De igaz?n nem szeretn?lek ezzel terhelni... elk?pzelni sem tudom, hogy mennyi munk?d fekszik m?r eddig is benne!!!!

    L

  15. #15
    Szia

    Az adText oszlop bont?sa gyerekj?t?k lesz, viszont itt szeretn?k kicsit pontos?tani. Mindig ?s mindenk?ppen adTExt az oszlop neve? Vagy esetleg m?s is lehet, ?s ink?bb k?rdezen r? a program?

    Az ?sszes?t?s első r?n?z?sre kicsit bonyolultabbnak tűnik, de val?sz?nűleg az is viszonylag k?nnyebben megoldhat?. Viszont most nem tudom, hogy mikor lesz időm komolyan foglalkozni vele. Lehet, hogy csak h?tv?g?n.

    Ami a f?rads?got, meg a befektetett munk?t illeti, nem kell nagy dologra gondolni. Tudod, ez a f?rum az?rt van, hogy akinek seg?ts?gre van sz?ks?ge, az k?rjen, aki meg seg?teni tud, az adjon. Nekem is hasznos, mert tanulok k?zben. Persze a k?sz?net, meg az elismer?s j?l esik a v?g?n, de s?rre nincs sz?ks?g (?s nem is szeretem ). Szerintem, ha igaz?n meg akarod k?sz?nni, seg?ts valakinek abban, amiben Te tudsz. Előbb-ut?bb visszajut majd hozz?m, mert ?gy műk?dik a vil?g
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  16. #16
    Sz?p Reggelt Kiv?nok!

    Az AdText oszlop - az eddig kapott lev?logat?sokban - ilyen n?ven szerepel ugyan, de k?zel sem biztos, hogy ez is marad. Ink?bb k?rdezzen r?, hogy melyik oszlop tartalmazza a sz?veges inform?ci?t.

    A seg?ts?g ny?jt?sr?l pedig az a v?lem?nyem, hogy amit Te teszel meg nekem, az t?bb enn?l. Hiszen a konkr?t probl?m?mat oldod meg.
    ?s amit aj?nlott?l, az "j? ?zlet" nekem, m?g akkor is, ha a tud?som ebben a tekintetben kezdetleges ?s ink?bb csup?n felhaszn?l?i szintű ismereteimre hagyatkozva seg?thetek m?soknak.

    Viszont a Te seg?ts?gny?jt?sod sarkall arra, hogy elm?lyedjek a Visual Basicben egy kicsit jobban ?s megtanuljam azt a fajta gondolkod?s m?dot, ami az alapszintű programoz?shoz sz?ks?ges.

    Ha nem tartod tolakod?snak, akkor tov?bbra is teszek fel majd k?rd?seket, de itt m?r ink?bb csak ir?nymutat?st szeretn?k k?rni egy-egy probl?ma megold?s "hogyanj?ra", nem pedig a konkr?t k?dot k?rem. Mert csak ?gy tanulhatom meg magam is, ha megk?zd?k az eredm?ny?rt.
    Beszereztem egy-k?t k?nyvet, ami a tud?som bőv?t?s?hez sz?ks?ges, viszont k?nyvekből nem lehet megtanulni az objektum orient?lt programoz?shoz sz?ks?ges logikai gondolkod?s m?dot. Itt ez alatt azt ?rtem, hogy egy adott probl?ma megold?s?t lehet, hogy t?lbonyol?tan?m, viszont akinek meg van rutinja, az kap?sb?l mond egy sokkal egyszerűbbet.
    M?g nem tudom, hogyan fogok haladni, de a kedv, akarat ?s idő az m?r rendelkez?sre ?ll! ?s azt gondolom, erre van igaz?n sz?ks?g!

    Amit az előzőekben k?rtem, az m?r "csak" r?ad?s nekem... igaz?n r??rős, nem kell sietni vele. A munka oroszl?nr?sze pedig m?r k?szen van - ?ltalad.

  17. #17
    Szia

    K?sz a k?vetkező r?sz is!
    Kicsit v?ltoztattam a szerkezet?n, teszteld le. Szerintem tetszeni fog De ha m?g valami hib?dzik, sz?lj nyugodtan.

    A k?rd?sek pedig term?szetesen j?hetnek.
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  18. #18
    Szia!

    K?sz?n?m! Val?ban j?k a v?ltoztat?sok , de sajnos nem fut v?gig.
    Elk?ld?m a munkaf?jlt, hogy azon pr?b?lhasd ki - de mivel t?m?r?tve is f?l mega, a mail c?medre tov?bb?tom.
    (kiszedtem minden olyan mezőt, amire nincs sz?ks?g, csak azok az oszlopok vannak benne, amelyekkel most ?n v?gig pr?b?ltam!)

    Azt hiszem a hiba ott van, hogy nem kezeli j?l az ?res sorokat..... de ez csak gondolom.

  19. #19
    Kijav?tottam az ?sszes hib?t, amit tal?ltam. Rem?lem, nincs benne t?bb.
    Egy?bk?nt igazad volt, k?t szempontb?l is. Egyr?szt val?ban az ?res sorok probl?m?t okoztak, de ez n?mileg tudatos volt, ugyanis arra sz?m?tottam, hogy nem lesznek kit?ltetlen mezők. Most m?r ezen nem akad fenn a program.
    M?sr?szt pedig val?ban nem mindegy, hogy mi a cella form?tuma, ugyanis a Find művelet nem tal?lta meg az azonos?t? sz?mokat, ha azok sz?vegk?nt voltak ?br?zolva. Vagy ford?tva, de a l?nyeg, hogy k?l?nbs?get tett k?z?tt?k. Lehet hogy ezt egy tr?kk?s be?ll?t?ssal meg lehet oldani, de elsőre egyszerűbbnek tűnt a cellaform?z?s.

    Mindenesetre most itt a 6. v?ltozat, pr?b?ld ki.
    -------------------------------------------------
    The more details you give, the easier it is to understand your question. Don't save the effort, tell us twice rather than not at all. The amount of info you give strongly influences the quality of answer, and also how fast you get it.

  20. #20
    Szia!
    Most hib?tlanul műk?dik!!!! ))
    Nagyon k?sz?n?m!

    (az eredm?nyből azt?n csemeg?zhetnek a főn?keim )

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •