Hozzászólások
-
SzerzőBejegyzés
-
Szia Tamás!
Majdnem biztos voltam benne, hogy dátum mezővel szívsz.
Ezekkel autofilternél és advanced filternél is csak a baj van.
Makrófuttatáskor konkrétan nem eszi meg a dátumot dátum formátumban.
Tehát nem írhatod ezt:>=2016.03.24
Az már eggyel jobb próbálkozás volt, (mert gondolom sejtetted a problémát), hogy megpróbáltad összefűzni a dátumot, de az eredmény továbbra is dátum forma maradt:
Range("C2").Select ActiveCell.FormulaR1C1 = "=""<=""&YEAR(RC[10])&"".""&MONTH(RC[10])&"".""&DAY(RC[10])"
Az egyik lehetséges megoldás az, hogy megnézed, hogy annak a dátumnak, ami akarsz,
mi a dátumszáma, és azt írod a feltételbe. Pl.: a 2016.03.29 dátumszáma 42458.Tehát ez jó lehet:
<=42458
De ez elég béna, ezért számított formában érdemes beírni a cellába a makró futtatás előtt:
="<="&DÁTUM(2016;3;27)
Beírás után különben ez dátumszámkét fog látszódni
<=42457
És végül, ha makróval akarod beírni:
Selection.FormulaR1C1 = "=""<=""&DATE(2016,3,27)"
Így a dátum egyes részei lehetnek befűzött változók is.
Kipróbáltam a küldött fájlon, működik, úgyhogy menni fog Nálad is, most nem xcsatolom vissza.
Minden jót, majd jelezd, hogy rendben van-e!
Imre
-
A hozzászólás módosításra került: 8 years, 11 months telt el-
horvimi.
Na jó, már éppen kérdezni akartam, hogy meg sem kísérelsz rákeresni?
🙂Azt hiszem nagyjából értem.
Tehát lenne négy altábla, ami kategóriánként tartalmaz indulásként egy összeget.
Te azt szeretnéd, hogy soronként töltögetve a csatolt táblát, ahol leegyszerűsítve megadod tételenként, hogy mely kategóriába esik, illetve kijön, hogy levonandó az összeg vagy hozzáadandó az adott kategóriához, lásd az altáblákban, hogy kategóriánként hogy állsz a kerettel.Én azt csinálnám, hogy szépen töltögetném ezt a táblát. Előjelesen írnám be az értékeket.
Ami levonandó. az negatív, ami hozzáadandó, az pozitív szám legyen.Majd csinálnék az egészből kategóriára bontva egy PIVOT táblát, ami összesíteni az összegeket.
Az összesenek valószínűleg negatív számok lesznek.
Ezek az összegek azt mutatnák, hogy mennyit kell hozzáadni a kiindulási összeghez az adott kategóriában.
Ha egy vagy több új sort kitöltöttél, akkor frissíted a PIVOT táblát.Végül hozzáadnám képlettel ezeket a számokat a kiindulási összegekhez kategóriánként.
Az eredmények mindig mutatnák, hogy mennyi pénz van még, ami elkölthető.
Én valahogy így kezdenék neki.
Imre
Szia!
Elsőként indítsd el SAFE módban az Excel-t.
Tartsd lenyomva ctrl billentyűt, mikor indítod
Ez letiltja az esetleges beépülő modulokat.
Nézd meg, hogy így elérhető-e a menüben a cucc!
Ha igen, akkor valami lakó van az Excelben.Telepítettél mostanában rá bármilyen add-on-t?
Powerquery, PowerPivot, vagy bármi, ami az excelbe beépülő lenne?
Esetleg ez a problémás fájl tartalmaz makrókat, amik futás közben lefagytak, vagy bármi miatt nem fejezték be a dolgukat?Kerestél már a neten a probléma után?
Ha tudsz makrókat futtatni, akkor próbáld ki ezt:
Sub ResetCellMenus() Dim cbr As CommandBar For Each cbr In Application.CommandBars If cbr.Name = "Cell" Then cbr.Reset Next cbr End Sub
Ha ez nem, akkor az Immediate ablakban futtatsd ezt:
Commandbars("Cell").Reset
Jelezz vissza, hogy mi lett!
Imre
-
A hozzászólás módosításra került: 8 years, 11 months telt el-
horvimi.
Szia!
Én nem látok csatolmányt.
Mert nem így kell hivatkozni rá, hanem úgy, hogy
Range("EUR").Value
vagy úgy, hogy
Sheets("alapadatok").Range("EUR").Value
Imre
Hát, ezt teljesen automatizálva nem nagyon megoldható. Legalább is most hirtelen nem látom…
Kézzel könnyű lenne a képlet eredményét értékként lemásolni egy másik oszlopba, de nyilván nem ezt akarod.
Te azt szeretnéd, hogy ha kitöltöttek egy cellát, akkor az abból fakadó eredményt el lehessen tenni egy független cellába. (Mi van, ha véletlenül rossz adatot adott meg?)Az a baj, hogy ha ezt automatizálni szeretnénk, akkor egy olyan makrót kellene írni, ami figyeli, hogy megváltozik-e a képlet eredménye, és ha IGEN, akkor lementi egy cellába az aktuális eredményt mint értéket. Ez simán megoldható, viszont minden változáskor le fog futni, tehát nem csak az első változáskor.
Azt is nézni kellene, hogy hányadszor változik, és csak az elsőnél másolja ki az eredményt.
Én ezt most passzolom.Ha leírnád, mit szeretnél valójában ezzel, talán lehet más megoldás.
Olyat pl.lehet, hogy egy cellába csak egyszer lehessen írni, utána védje le a cellát vagy az egész sort.Ezek persze eseménykezelő makrók.
Imre
Szia!
Ha azt akarod, hogy ne is tudja megnyitni a munkalapot, akkor miért nem rejted el?
Ha elrejted, és utána jelszóval véded a munkafüzet szerkezetét, akkor nem tudja előszedni.
(Korrektúra->Füzetvédelem)Átlag user-ről beszélek, nem arról, aki mindenképpen fel akarja törni.
Az elrejtést kétféleképpen lehet:
– Az egyik a hagyományos jobb klikk->Elrejtés
– A másik a jobb klikk-> Kód megjelenítése -> Bal oldalon kiválasztod a munkalapot -> F4-el előveszed a tulajdonságok ablakot -> Utolsó tétel a „Visible” tulajdonság -> VeryHiddenUtóbbi úgy rejti el, hogy nem látszik a felfedés menüben, hogy van elrejtett munkalap.
Amit eredetileg akarsz, hogy ne is lehessen kiválasztani a munkalapot, de különben látszódjon, csak makróval lehet megcsinálni.
A makrók pedig letilthatók, és ott van vége.Ráadásul akkor mindenkinek, még neked is tiltva lesz az átkattintás. Hacsak nem még bonyolultabb makróval megnézzük a megnyitáskor, hogy jogosult személy nyitotta-e meg a fájlt.
imre
Szia!
Elég gyakori kérdés ez. Az azonosságok vagy a különbségek a kérdés.
Színnel megjelölni, kiszűrni, megszámolni…Egy speciális, legtriviálisabb példát már mutattam korábban itt, a Bázison.
Ez csak színnel jelöli a különbségeket.
Általánosabb megoldás, ha az egyik listában a tételek mellé egy új oszlopban megnézed, hogy az aktuális tétel szerepel-e a másik listában. Ezt lehet DARABTELI, HOL.VAN, FKERES függvényekkel csinálni. Én a DARABTELI-t javaslom. Angol neve COUNTIF.
=HA(DARABTELI(masik_lista, akt-tétel)>0;1;0)
vagy
=--(DARABTELI(masik_lista;akt-tetel)>0)
Mindkét képlet 1-est ad, ha az aktuális tétel benne van a másik listában és nullát, ha nincs benne.
Ezután az oszlop alján összeadva az egyesek számát, megkapod, hogy hány olyan tétel van, ami benne van a másikban is.Ha nem akarsz segédoszlopot, akkor egy cellában rögtön meg lehet kapni az eredményt, de ez egy összetett tömbképlet eredménye.
Feltöltöttem egy minta fájlt.
Jelezd, hogy jó lett-e?!
Imre
Attachments:
You must be logged in to view attached files.Szia!
Nagyon érdekes problémákat hozol. Először azt hittem, passzolnom kell, mert nem nagyon volt ötletem, és nem is nagyon találtam megoldást. Végül meglett, sé kiderült, hogy elsőre elég közel jártam.
Szóval tegyük fel, hogy a tartományod az A1:D4-ben van.
1. Tömbképlettel megnézheted, hogy hol van benne a legnagyobb érték:
=--(A1:D4=MAX(A1:D4))
Ez egy tömböt ad eredményül. Ott lesz benne egy egyes, ahol a legnagyobb érték van.2. Ha ezt szorzod a tartomány celláinak az oszlopaival, akkor az eredmény mátrixban az adott helyen a keresett max érték oszlopának száma lesz, a többi helyn meg nulla.
3. Ezt a szorzatösszeggel összeadva, megkapható eredményként a max érték oszlopának száma száma
=SZORZATÖSSZEG(--(A1:D4=MAX(A1:D4))*OSZLOP(A1:D4))
4. A fejlécből kiveszed az ennyiedik elemet
5. Ugyanezt megcsinálod a sorokra is.
6. A két képletet egybe is vonhatod, hogy a sor és oszlop számítás, meg az INDEX függvények ne legyenek külön cellákban.
FONTOS!
Ez nyilván csak akkor műxik, ha nincs két egyforma legnagyobb.
Különben PASSZ!Visszatöltöttem a fájlt a megoldással.
Imre
-
A hozzászólás módosításra került: 8 years, 11 months telt el-
horvimi.
-
A hozzászólás módosításra került: 8 years, 11 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.Lenne még egy ötletem, ha képletekkel akarod megoldani, de ehhez a sorokban lévő rekordokat oszlopokba kell transzponálni. ha Fix oszlopszámosd van, akkor ez járható út lenne.
Ki kell jelölni egy segéd-tartományt, ahol a varázslat történik.
A TRANSZPONÁLÁS (TRANSPOSE) függvény úgy tud elforgati egy tartományt, hogy ezután leköveti a változásokat.
Ha minden sorodat egymás mellé transzponálod oszlopokba, akkor ezekből már lehet másodlagos oszlopokat generálni a második legördülő listának, amiben már nincsenek üres cellák.
Itt egy lehetséges megoldás:Imre
Ezt az Én tudásom szerint csak eseménykezeléssel, makróval lehetne megcsinálni.
Ebben az esetben a legördülő elemek lehetnének ActiveX vagy Form vezérlők, amiknek a sorforrását futásidőben töltenénk ki, amikor az első vezérlőben választottál valamit, azaz annak megváltozik az értéke.Szia Emese!
Úgy értelmeztem, hoyg az angol ABC szerint kell megoldást keresni, azaz a magyar ékezetes magánhangzókat az angolra váltva akarod a megoldást.
Amit Te csináltál különben teljesen jó, de azért ajánlom figyelmedbe a visszatöltött alternatív megoldási javaslataimat. A magyarázat a fájlban.Imre
Attachments:
You must be logged in to view attached files.Az a helyzet, hogy valahová mindenképpen le kell tárolnod a szűrőbeállításokat.
Ha ez lehetséges, akkor lehet továbblépni.Ha jól gondolom, a fájl helye adott, csak soha nem mentik el. Ha ez igaz, akkor ugyanabba a mappába letehetnéd a szűrőbeállításokat is egy általad kitalált struktúrájú szövegfájlba.
Kicsit bonyolítja a helyzetet, hogy több beállítás is lehet, amiből valahogy még választani is tudni kellene, de ez legyen későbbi probléma.Ha a fájl különben xlsm lehet, akkor a workbook open eseményhez megírhatnád, hogy saját magával egy mappában lévő adott nevű fájlból olvassa be egy tartományba, vagy tömbbe a legutoljára elmentett szűrőbeállításokat. Aztán valami shortcut-ra kidobhat egy menüt, hogy válasszanak belőle.
Egy másik shortcut-ra meg elmenthetné az aktuális beállításokat. Aztán szűr egy másikat, és azt meg hozzáfűzheti.
DE hogy hogyan döntöd el, mikor kel felülírni a régi szűrőbeállításokat, és mikor kell hozzáfűzni, már megint egy újabb probléma.
Érdekes.
Különben megoldható, hogy paraméterrel hívjunk be egy munkafüzetet az excelbe, de ezt az excel indításával együtt lehet csak megcsinálni, mert valójában commad line feladat. Így ha már fut az Excel, akkor egy újabb példányt kell indítanod, ami megint új problémákat generálhat. Én nem csinálnám, de itt a lehetőség:
https://social.technet.microsoft.com/Forums/office/en-US/bb9fa94f-a1d4-45cd-9279-b12e7a7e69c0/passing-a-parameter-to-an-excel-file-when-opening-it?forum=excelImre
Mikor sima tartománnyal kipróbáltam úgy, hogy létrehoztam az egyéni nézeteket, üresen mentettem a fájlt, bezártam, kinyitottam, majd bemásoltam egy szűrendő tartományt, nagyobbat, mint az egyéni nézet ,létrehozásakor volt, akkor működött. Az „újra alkalmaz” úgy tűnik, arra való, hogy ha az érvényben lévő szűrés közben új rekordok kerülnének a végére, azokra is érvényesíti a szűrést.
A szűrés törlésekor vagy a tartomány törlésekor, a fájl bezárásakor szürke lesz.Majd írd meg mi lett!
Megnéztem a hivatkozott makrót.
Ha boldogultál vele, ez kezdetnek bíztató.
Viszont az elmentett szűrőbeállítások nem kerülhetnek bele a fájlba, ha mentés nélkül bezárják.
Emiatt csak az lehetséges, hogy egy másik Excel munkafüzetbe, vagy egy TXT fájlba kerül az elmentett szűrés, amit egy makróval be kell olvasni.Tehát azt a tömböt, amiben a filterek vannak, ki kell tenni valahová, elmenteni, és a két fájl együtt mozog.
Más nem nagyon jut eszembe.
Imre
Rossz hírem van!
Kíváncsi voltam, ezért kipróbáltam adatkapcsolatos verzióban.
Itt az a gond, hogy a frissített külső adatkapcsolatok Táblázatként jelennek meg.
Így viszont ugye nincs egyéni nézet.Ha átalakítom tartománnyá, akkor elvész az adatkapcsolat, ráadásul az egyéni nézet nem ismeri fel a tartományt.
Access lekérdezéshez kapcsolódtam.
Úgyhogy ez nem lesz ennyire egyszerű sajnos.
🙁Szia!
Nézd meg ezt! Az egyik kedvencem.
http://excel-bazis.hu/tutorial/villamgyors-valtas-az-autoszuresek-kozottKipróbáltam így:
– Egy új fájlba bemásoltam egy táblázatot
– Elmentettem néhány szűrőt
– Elmentettem a fájlt
– Kitöröltem a táblázatot
– Elmentettem újra a fájlt
– Visszamásoltam a táblázatot
– Az elmentette szűrőket alkalmaztamMűködött!!!
Lényeg, hogy ugyanarra a lapra kerüljön mindig a táblázat.
Ez azonban teljesül, mert a lekérdezés eredménye ugyanoda kerül a frissítéskor.Nagyon kíváncsi vagyok!
Imre
Szia!
Néhány tipp:
Vegyük előbb az új árlistát.
Ha az új ár oszlop mellé felveszel egy segédoszlopot, akkor oda FKERES fv-el kikerestetheted a régi listában a cikkszámot, és az alapján a régi árat. Ha nem találja a cikkszámot, akkor hibát ad. Ezt egy HAHIBA fv-el lekezelve visszaadhatsz egy saját értéket. Ezzel lesznek azok, amik újak.
Ha viszont megtalálja az előző listában, akkor összevetheted a két árat, és visszaadhatsz ennek megfelelő értékeket (Pl. „Fel”/”Le”/”Maradt”)
tehát egy képletben vegyesen használsz HAHIBA, FKERES és HA függvényeket egymásba ágyazva.A régi árlistában ugyanezt megteheted, és az új oszlopba kikeresteted HOL.VAN vagy FKERES függvénnyel, hogy a régi cikkszám szerepel-e az újban.
Ha a segédoszlopos verzió már megy, megpróbálhatod a megtalált képleteket alkalmazni feltételes formázáshoz.
Kicsit tornázzál rajta.
Imre
Szia!
Hát úgy, hogy az eredmény is egymás alatt legyen, úgy elég macerás, talán valóban makró kellene hozzá.
Viszont ha az eredmény két dimenziós is lehet, akkor makró nélkül, egy egyszerű tömbképlettel megoldható. Persze utólag értékként átmásolva valahová, már akár oszlopba rendezheted.
imre
Attachments:
You must be logged in to view attached files.Szia!
Sajnos a problémád nem oldható meg PIVOT-tal.
Sőt, így, hogy vízszintesen periódusonként nézed, másként is meglehetősen bonyolult.Összeraktam neked egy modellt, és egy részére ki is húztam a képleteket.
Azért nem az egészre, mert átlépte volna a az 512k limitet a mérete.
Ha a képleteket függőlegesen és vízszintesen is kihúzod, kb. 1.7 mega a méret, és az újrakalkulációs idő 1 perc is lehet. XLSB-be mentve kicsivel kisebb lesz a mérete.A zöld képlet megkeresi adott termékhez és periódushoz tartozó minimális kedvezményes árat.
Ez egy tömbképlet, és a több, mint 30e sorban meglehetősen lassú. Sajnos nincs MINHA és MINHATÖBB függvény az Excelben, de megoldható így.A barack pedig kikeresi az összefűzött oszloppal kiegészített táblázatból azt a sort, ahol az aktuális termék és a min. kedvezményes ár van, és kiveszi a normál árat.
Ha megnézed a 7UP sorban az április 2014 oszlopot, akkor ott van, amit kerestél. Nem túl sok helyen van eltérés különben a két ár között, de azért előfordul.Erre gondoltál?
Imre
Attachments:
You must be logged in to view attached files.Szia!
Bocsánat, de amit leírtál, nem értem. Néha nehezen látunk ki a saját problémánkból 🙂
Azt még sejtem, hogy legalább három oszlop van. Első oszlopban mondjuk termék név vagy kód, a következőben normál, utána a kedvezményes ár. Gondolom ez egy tranzakciós adattábla, mondjuk forgalmi adatokkal.
– Egy termék nyilván többször szerepel a táblában.
– Minden előfordulásához más-más normál és kedvezményes ár tartozhat?Ha termékre csoportosítasz, és adatnak behúzod a normál árat és a kedvezményes árat, akkor mindkettőre állíthatsz be min. függvényt.
Így termékenként megkapod a normál és a kedv. ár minimumát.Ha nem így van, akkor tölts fel egy minta táblázatot, amiben a forrás adat van, és mellé tölts ki egy táblázatot, vagy részletet, hogy mit szeretnél látni!
imre
Szia!
Szerintem csak az lehetett a baj, hogy esetleg nem Ctrl+Shift+ENTER-rel ( CSE ) zártad le azt a bizonyos bonyolult képletet.
Na, mindenesetre egy kicsit még reszeltem rajta:
– Táblázattá alakítottam az A-H oszlopokat
– N2-től egy új sorban kiszámolom, hogy melyik kódból hány van, meddig kell majd lehúzni a képletet
– A képletet az N4-ben átírtam táblázatos verzióra, utána CSE!!!
– Elhúztam vízszintesen a végéig
– Elkezdtem őket lehúzni függőlegesen is a 2. sorban olvasható darabszámig. R oszlopig jutottam, a többi a te dolgodA táblázattá alakítást azért csináltam, hogy ne kelljen kijelölni a tartományokat, hanem a z oszlop nevével hivatkozhassak. Az oszlopokba bele kell vennia fejlécet is, ezért van #Mind rész is benne.
Sok sikert,
Imre
Attachments:
You must be logged in to view attached files.Szia!
Ott keresd a problémát, hogy nézd meg, hogy működik a keresés, amikor kézzel keresel.
Amikor minden előforduláson átmentél a „Következő” gombbal, akkor elkezdi a keresést elölről, és újra az első találatra ugrik. Ezért a .find – .findnext ciklusoknál azt csinálják, hogy megjegyzik az első találat (.find) celláját, és a ciklus addig fut, amíg a .findnext újra az elsőnek megtalált cellára ugrik.Itt van két link, tanulmányozd:
http://www.ozgrid.com/forum/showthread.php?t=168157
http://www.ozgrid.com/forum/showthread.php?t=37604Még okozhat esetleg további problémát az, hoyg a találatok A oszlop végére írásánál SELECT-et használsz. meg kéne próbálni select nélkül, egyből beleírni.
Cells(ActiveCell.CurrentRegion.Cells(ActiveCell.CurrentRegion.Cells.Count).Offset(1, 0).Row, ActiveCell.Column).Value = keresett.Address
Imre
Szia!
Nincs ilyen lehetőség jelenleg, Excel 2016-ig. Valószínűleg nem is lesz.
Lehetséges megoldások, kerülő utak:Ahogy te csináltad
A szűrés után kimásolod a látható rekordokat, és azon készíted el a PIVOT-ot, vagy módosítod a már létező Pivot adatforrását. Ez makróval automatizálható.
Lenne két munkalapod. Az egyiken az adatbázis, a másikon a szűrésnek megfelelő sorok.
A PIVOT táblát a szűrt adatok alapján elkészíted.Ha változik az adatforrásod, vagy másik szűrést állítasz be, akkor a makró kitörölné az előző adatokat a szűrés lapról, az új szűrést odamásolná, majd módosítaná a PIVOT adatforrását az aktuális mérethez.
Adatbázis, pl ACCESS bevonásával
– Az adataidat Access-be linkeled
– Ott készítesz egy Query-t a szűrésnek megfelelően
– Az Excelben a PIVOT táblát a lekérdezéshez kapcsolod.Ebben az esetben, ha változik a forrás adat, akkor csak frissíteni kell az Access-ben a becsatolt adttáblát, és fissíteni kell a PIVOT táblát, ami befrissíti az Access lekérdezést.
kb. ez jut eszembe
Imre
Én is örülök, nagy sikerélmény volt!
Izgatott a kérdés, ezért elkészítettem a Te adataiddal is a megoldást.
csatolva.Imre
Attachments:
You must be logged in to view attached files.Szia!
Hát, így elsőre nem túl egyszerű a kérdés. Illetve az igényektől függően bonyolult.
Mert ha csak az a kérdés, hogy a kódok az egyes oszlopokban hányszor vannak benne, az még nem olyan problémás.
Ha viszont az oszlopkombinációkhoz akarod a kódokat rendelni, nos az már kicsit izgalmasabb.Nyilván adja magát az, hogy makróprogramot lehet írni, és akkor bármit meg lehet csinálni.
Kicsit eljátszogattam vele, készítettem egy modellt 3 oszlopra (A,B,C)
A-B-C oszlopokba vannak a kódok, ismétlődésekkel, ahogy írtad.
F oszlopba képeztem a kódok egyedi listáját, és mögé kiszámoltam, hogy melyik kód melyik oszlopban hányszor szerepel. ha több, mint nullaszor, akkor az oszlop kódját kapja, különben üres sztringet.=HA(DARABTELI(A$1:A$10;$F2)>0;G$1;"")
Tehát a piros fejlécű táblázat már megoldás első szinten. Az utolsó oszlopban (J oszlop) benne van, hogy egy kód mely oszlopokban van benne.
A második féle megoldás a kék fejlécű részben van.
Itt a fejlécben a lehetséges oszlop-kombinációk vannak, és minden kombinációhoz kilistázza a kódokat az F oszlopból. Ez egy elég bonyolult tömbképlet, amit oszloponként addig kell lehúzni, amíg üres nem lesz az eredmény. Ha módosítanád, akkor fontos, hogy Ctrl-Shift-ENTER-rel kell lezárni.Próbáld meg alkalmazni a 6 oszlopos verzióra.
Ha az első szintű megoldás elég, akkor készen vagyunk.
csatoltam a modellt.
Imre
P.S
Nem vettem észre, hogy csatoltál egy mintafájlt, bocs, hogy nem azzal dolgoztam.-
A hozzászólás módosításra került: 9 years, 1 month telt el-
horvimi.
Attachments:
You must be logged in to view attached files.Szia!
Én nem pöcsölnék már ezzel ennyit.
Amikor beszúrod az új munkalapot, akkor előre kitölti az egész hónap dátumait a 32. sorig.
Ezért Én az E33-ba vagy E34-be betenném fixen a képletet.Range("E34").Formula = "=SUM(E2:E32)"
Ha 30 vagy 28 vagy 29 napos hónap van, úgyis törölni kell a nemkívánatos sorokat, és a képlet le fogja követni.
Szerintem.
Imre
Szia!
Ilyet egyértelműen az okoz, hogy a D oszlopban az egyik cella Felt. formázását törölték.
Ez úgy is megtörténhet, ha Beillesztéssel tesznek oda egy dátumot, és nem gépeléssel.A Másolás/Beillesztés viszi magával a Felt. formázást is. Ha nem volt rajta semmi, akkor azt viszi, és törli a célhelyen lévő, érvényben lévő felt. formázást.
Ez a cella vagy cellák ezután kimaradnak a felt. formázás érvényességi tartományából, megszakítva annak folytonosságát.
Kipróbáltam, hogy beírtam egy tartományon kívüli cellába egy dátumot, majd bemásoltam a D oszlopba.
Megnéztem a Felt. formázást a D oszlop bármely celláján, és az általad kifényképezett eredményt kaptam.Imre
Kedves Laci!
Szerinted ennyiből mégis hogyan válaszoljak?
Például mit értesz érvényességi tartományon?Válaszolni csak a megfelelő info birtokában tudok.
Írd le a problémát érthetően és részletesen, tölts fel minta munkafüzetet, ilyenek…Imre
Hát, elég érdekes címet adtál a kérdésnek, de már értem mit szeretnél.
Ha jól gondolom azt szeretnéd, hogy a vágólapra kimásolod ezt a tartalmat, majd valamilyen struktúrált formában szeretnéd viszontlátni.Először nézzük az Excel részét
Ez csak úgy lehetséges, hogy ha Beillesztéssel leteszed egy helyre, majd meglátva, hogy mi lesz belőle, lehet tovább haladni a struktúrálással.
Valószínűsítem, hogy valami makrót kellene írni rá.A számlázós részhez
Ez biztosan nem fog menni ilyen egyszerűen. Ugyan nem ismerem a szamlazz.hu működését, de mivel ez is csak egy számlázó, azt gondolom, hogy számlát kiállítani egy korábban már rögzített ügyfélnek, vagy egy újonnan most felvett ügyfélnek tudsz.
Ehhez pedig vagy kézzel egyesével kell kitölteni az egyes mezőket, vagy azt még el tudom képzelni, hogy importálni tud CSV fájlból ügyfél adatokat. Ehhez tudni kell az elvárt CSV fájl szerkezetet.Tehát nem lehetetlen, de nem is olyan egyszerű.
Imre
Szia András!
Minden új kérdés = Új fórum topic!
Köszi!
Imre
Kedves gyöngyi!
Nincs lehetőség arra, hogy alapértelmezetté tegyük a klasszikus nézetet.
Olyat lehet max. tenni, hogy makróval lerövidítjük az átváltást klasszikusra.
Ezt a makrót az egyéni makró munkafüzetbe téve, felvehető egy billentyű shortcut vagy egy gomb a QAT-re.Imre
Kedves Gyöngyi!
Örülök, hogy tetszenek az anyagok. Sok felfedezni való van az Excelben…
Amit Te szeretnél, azt egy Excel Add-In telepítésével lehet megoldani.http://www.rondebruin.nl/win/addins/datepicker.htm
Csak azon a gépen fog működni, ahová ezt feltelepítik.
céges gépeken sokszor tilos és le is van tiltva a telepítés, de otthoni gépeken, vagy ha a cégnél nem olyan szigorúak a szabályok, akkor menni fog, kipróbáltam.
Elég gyakran kérdezik, hogy lehet-e ilyet csinálni.A magyar nyelvű verzió még nincs meg, de ez csak azt jelenti, hogy amíg a kívánt dátumot kiválasztjuk, az angol lesz, de a beírt dátum már a megfelelő formátumban jelenik meg.
Sok sikert,
Imre
Szia!
A változók (kezdes és vege) string típusok.
A vege változót lehet „off”-ra vizsgálni. Tehát elég, ha csak ennyit teszel, és ha a 4. oszlopba „off” kerül, akkor mellé egy nullát tesz, különben lefut a munkaidő számítás.Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) Dim kezdes As String Dim vege As String Dim perce As Integer kezdes = Cells(Target.Row, 3).Value vege = Cells(Target.Row, 4).Value If Target.Column = 4 Then If vege = "off" Then Cells(Target.Row, 5).Value = 0 Else perce = CInt(Minute(CDate(vege))) Select Case perce Case 0, 30 Cells(Target.Row, 5).Value = (vege - kezdes) * 24 Case 1 To 59 Cells(Target.Row, 5).Value = WorksheetFunction.RoundUp((vege - kezdes) * 24 / 0.5, 0) * 0.5 End Select End If End If End Sub
A bolondállóság azt jelenti, hogy mennyire vizsgáljuk, hogy a felhasználó valóban helyes formátumú, intervallumú adatot írt be. Ha mások is használják, akkor ezt jobban szoktuk ellenőrizni, hogy ne adjon az első tévedésnél runtime hibát, vagy egyéb hibás működést.
Ezt a szintet neked kell eldönteni. Ez a kis progi most nem túl bonyolult, simán el lehet magyarázni, hogy hogy kell használni, és mi lesz ha nem jót ír be.
Lehetne vizsgálni mindkét oszlopban, hogy egyáltalán időt írt-e be, ezek hogy viszonyulnak egymáshoz (pl. a vége később van-e, mint az eleje), stb…
Imre
-
A hozzászólás módosításra került: 9 years, 1 month telt el-
horvimi.
Na, egy kicsit körbejártam a problémát, mert valóban volt itt egy olyan gond, amivel még nem foglalkoztam Én sem. Ahogy a tanfolyamon is említettem, eddig élesben nem nagyon foglalkoztam userform-os alkalmazásokkal.
Volt két alap hiba. Az egyik, hogy miután bemásoltad a kódot a fórum weboldaláról, nem vetted észre, hogy a range(„adatok”) dupla idézőjelei nem egyenesek, hanem ferdék, azaz nem a VBA szintaxisának felelnek meg. Ezeket kézzel vagy cserével cserélni kell. Ezt valószínűleg a WP editor rontotta el.
A másik, amit Én is elmulasztottam kezelni, hogy ha választasz valamit a Combi panelben, akkor az szöveges lesz, de a Kód oszlopban számok vannak,ezért még egy Val függvényt be kell iktatni. Enélkül a Vlookup nem fog találni semmit, és hibával elszáll.A lényegi problémát viszont nem ezek, hanem a következő okozta:
Miközben az Initialize rutin fut, és eléri a BoundColumn=1 sort, az kiváltja a Combobox1 Change eseményét. A Change-ben pedig van egy Vlookup, ami keresi a Combobox1.value értéket a tartomány első oszlopában. de mi van éppen a Combipanelben? Egy nagy semmi, mert még el sem értünk arész betöltéséig. ha meg eljutottunk volna, akkor pedig a "<válassz>"
stringet keresné. Nem találja, ezért hibát dob.Megoldás
Van Combobox-nak egy ListIndex tulajdonsága, ami megmondja, hogy hányadik elemet választották. Nullától kezdődik a sorszámozása. Ha nem a listáról való a benne lévő aktuális tartalom, akkor pedig -1-et tartalmaz. na ezt kell figyelni a Change-ben.Private Sub ComboBox1_Change() If ComboBox1.ListIndex > -1 Then TextBox1.Value = WorksheetFunction.VLookup(Val(ComboBox1.Value), Sheets(1).Range("adatok"), 2, 0) TextBox2.Value = WorksheetFunction.VLookup(Val(ComboBox1.Value), Sheets(1).Range("adatok"), 3, 0) End If End Sub
Nézd meg, nálam működött.
Volt még kérdésed.
A Show metódus mielőtt megjeleníti az űrlapot, kiváltja az Initialize eseményt. ez gyárilag van így, pont azért, hogy a form egyes elemeinek tulajdonságait még a megjelenítés előtt, dinamikusan meg tudjuk határozni. Tehát a Show hívja meg az Initialize-t.Imre
-
A hozzászólás módosításra került: 9 years, 2 months telt el-
horvimi.
Szia!
Valahonnan olyan ismerős ez a kód… 🙂
Szóval a Kombi panel csak egy értéket „jegyez meg”, azt, ami a kötött oszlopban van.
A többi oszlopban lévő értéket csak esetleg mutatja, de nem tartalmazza az űrlap.Ezért ezeket VLOOKUP-al tudod kikeresni az adatok tartományból.
Persze ehhez az kell, hogy a Bound Column, azaz az első oszlop egy egyedi azonosító legyen. Emiatt szoktuk az első oszlop szélességét nullára venni, de valójában azt választjuk ki.De ha az első oszlopod neveket vagy címeket tartalmaz, és abban nincs egyforma, akkor persze nem kell nullázni a szélességét, az is lehet egyedi azonosító.
Na de nézzük a konkrétumot:
Tegyük fel, hogy az „adatok” tartományban a Cím a második oszlop.Private Sub ComboBox1_Change() Textbox1.Value = Worksheetfunction.Vlookup(ComboBox1.Value,Sheets(1).Range(“adatok”),2,0) End Sub
Szerintem.
Nem próbáltam.
Imre
Letiltja vagy engedélyezi az eseménykezelést, azaz az eseménykezelők futtatását.
Amíg FALSE állapotban van, addig bármely esemény történik, pl. CHANGE, nem fog lefutni a kezelője.Például, ha az a feladat, hogy bármely cella tartalma megváltozik, a mellette lévő cellába írd be az aktuális dátumot. Erre a Worksheet_Change eseményt szokták használni.
De abban a pillanatban, hogy a mellette lévőbe beírsz valamit, az megint kiváltja a Change eseményt, és a következő megint, a végtelenségig. Ezt hívják EVENT LOOP-nak.
Emiatt az eseménykezelőben végrehajtott változtatások idejére ki szokták kapcsolni az eseményeket az EnableEvents tulajdonsággal.A Te esetedre visszatérve, az is jó megoldás lenne, ha nem csak a 4. oszlopot vizsgálod, hanem azt is, hogy a 4. oszlopban, ÉS a fejléc alatti vagy annál nagyobb sorban történő változáskor számoljon munkaidőt, akkor erre a dologra nem lenne szükség.
Azt sem vizsgálod, hogy a a munka kezdő időpont ki van-e töltve 🙂
Kérdés, hogy csak magadnak írtad-e, vagy odaadod valakiknek használatra? Utóbbi esetben azért a bolondállósági fokot érdemes lehet növelni. 🙂Imre
Szia!
A munkaidő kiszámolását a 4. oszlopban történt cellaérték változás eseményéhez kötöd.
De a munkalap beszúrásakor, amikor a fejlécet hozza létre, ott is ír a 4. oszlopba, de az nem időérték, hanem egy szöveg, amit megpróbál átalakítani úgy, ahogy a change eseménykezelőben megadtad, de nem sikerül neki.Az ilyesmit úgy lehet megoldani, hogy amíg a fejlécet töltöd, addig kikapcsolod az eseménykezelést.
Ezt így lehet:Application.EnableEvents=False
Majd miután már kell figyelni az eseményekre, visszakapcsolod.
csatoltam a működő verziót.
-
A hozzászólás módosításra került: 9 years, 2 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.A cella formázása soha nem nyúl a valódi értékhez. Tehát ha egy cellába megadod az 5,2634 értéket, majd 2 tizedesre állítod formázással, attól még fent a szerkesztőlécben továbbra is az eredeti számot fogod látni.
Ez akkor is igaz, ha a cellában egy képlet van, és az számolja ki, és adja eredményül a törtet.Ha szeretnél ezen változtatni, akkor kerekítő függvényeket kell használnod.
Magyar Excel-ben az általános kerekítő függvény a=KEREKÍTÉS(mit, hány_tizedesre)
IMre
Hát, először Én sem gondoltam volna, hogy meg tudom csinálni, de éppen mostanában merültek fel hasonló kérdések, már ami a váltakozó adatok érzékelését, azonosítását illeti.
Köszönöm az érdekes problémát!
Hát, nem egyszerű a probléma.
Csináltam valamit, nézd meg.Az adatokban produkáltam a hibákat.
A pirosaknál előbb 5 napon belül vagyunk ugyan, de a szolgálati idő meghaladja a 72 órát ezalatt
Majd pedig több, mint 5 napot van szolgálatban.A barnánál pedig 5 nap után csak egy nap pihenője volt.
Erre gondoltál?
Imre
Attachments:
You must be logged in to view attached files.Ez is egy remek megoldás, örülök, hogy megoldódott.
Tegyük fel, hogy a számaid az A oszlopban, A2-nél kezdődnek.
A szomszéd, B oszlopba írd ezt a képletet, majd szűrd a táblát a B oszlopban az IGAZ értékekre.=JOBB(KEREK.LE(A2;-2);3)="500"
Lefelé kerekít 100-asokra, majd megnézi, hogy az utolsó 3 karakter 500 lesz-e.
Remélem megfelel. 🙂
Imre
-
A hozzászólás módosításra került: 9 years, 2 months telt el-
horvimi.
Szia!
Még mindig nem egyértelmű mit szeretnél.
Van egy ActiveX vezérlőd, és regisztrálni, használni szeretnéd, vagy keresel egy „dátumkezelő” vezérlőt?Vagy esetleg keresel egy datepicker vezérlőt?
Mindenesetre itt van némi olvasnivaló, amit első keresésre találtam.
Ezt a keresést mondjuk Te is megtehetted volna.http://excelribbon.tips.net/T002080_Installing_the_Date_Picker.html
Imre
Szia!
Az INDIRECT függvény nem tudja ezt.
Kicsit utánanéztem, de csak makrós, UDF-es megoldást találtam, meg ezt a kijelentést:„INDIRECT does not evaluate formulas that use worksheet functions, and if the defined name represents a formula and not a simple reference, it’ll error out.”
Tettem egy ilyen próbát:
G2-t választottam (üresen)
Megnyitottam a Visual Basic Immediate ablakot (ALT-F11, majd Ctrl-G)
Beírtam ezt:
Selection="="&"keresztnévből"
Működik.
Ez azt jelenti, hogy ha feltennél egy Combo box ActiveX vezérlőt, beállítanád, hogy ezt a két nevet lehessen kiválasztani, akkor a vezérlő Change eseményéhez rendelhetnéd a következő kódot:Private Sub ComboBox1_Change() Range("G2") = "=" & ComboBox1.Text End Sub
És persze ezután makróbarát munkafüzetként kell elmentened a fájlt.
Szóval Macro Free megoldás nem létezik.
Szerintem.
Imre
Szia!
Ez egy n-dik megoldás arra a helyzetre, amikor konstans értékek vannak sorba (vagy itt a németnél nem sorba csak egymás után) rendezve.
Ebben az esetben a Chandoo-nál talált post hozzászólásaiban több megoldás is van, és amit tegnap feltöltöttem az is működik segédoszlop nélkül.A függvény, amit használ különben az N(), ami magyarul is N() és arra való, hogy számmá konvertáljon értékeket. Jelen esetben a TRUE/FALSE értékeket 0/1-re.
Elavult, nem túl hasznos, kompatibilitási okok miatt létező függvény.Ilyen esetben sokkal egyszerűbb megoldás, ha bármi olyan műveletet végzel vele, ami nem változtatja meg az értékét. Meg szokták szorozni 1-el, vagy kétszer váltanak rajta előjelet, stb…
=--(A2<>A2)
Ez A1 és A2 tartalmától függően 1 lesz vagy 0.A te értékeidet viszont még be kell osztani sávokba. Nem is ez a gond, hanem az, hogy kimaradhatnak sávok. Ez az, ami nagymértékben bonyolítja a történetet.
Nem állítom, hogy nem lehet segédoszlop nélküli képlettel megoldani, de Én nem tudok és nem találok rá megoldást, sajnálom.
Ha a segédoszlopot tiltja a vallásod, akkor le kell makrózni. 🙂Hali!
Ezt segédoszlop nélkül nem lehet megcsinálni. Azért nem, mert a magasság értékeket mindenképpen át kell valahogy alakítani, hogy kategóriába lehessen sorolni.
Vagy le kell Programozni VBA-ban, és hozzáadni egy eseménykezelőt, hogy ha bármelyik magasság érték megváltozik, akkor fusson le. Ez egyszerűbb.Találtam egy megoldást a Chandoo oldalán, amit kipróbáltam, és működik. Még nem teljesen értem.
Ennek alapján visszatöltök egy megoldást. A B oszlopban történnek a dolgok. A formázás inverz az eredetihez képest, de jól láthatóan igazodik hozzá.
A D oszlopban van az a képlet, amit a CF-be is írtam. Törölhető. A C oszlop viszont kell. Legfeljebb elrejted, vagy háttér színűre állítod a színt.
Persze így a Te eredeti megoldásod is jó.
Imre
Attachments:
You must be logged in to view attached files.Szia!
Ez is érdekes feladat. Igazából csak a fájl kinyitása után kezdem sejteni, h mit szeretnél.
Ha minden kategóriának más sávszínezés kell, akkor így megoldható:– A G oszlopban lévő magasság határokat betettem tömbkonstansként a névkezelőbe, mert a felt. form. nem fogad el tömbkonstansokat csak ha elnevezzük őket.
– Monoton csökkenő sorozatban a Match (Hol.Van) függvénnyel a legkisebb nagyobbat kereshetjük, ha az utolsó argumentum -1.
Így ha az aktuális magasság értéket keresem a tömbben -1-es match-el, akkor mindig a hozzá legközelebbi nagyobb érték sorszámát adja vissza. Az ugyanoda tartozóknál persze azonos számot, ahogy látszik a C oszlopban. (Ez az oszlop csak demo, nem kell segédoszlop)Innentől kezdve, ha minden sávnak más szín kell, akkor annyi szabályt kell létrehozni, ahány sávod van. Jelenleg 16-ot.
Elkezdtem…, a 4-esig jutottam.
Ezt szeretnéd?
Imre
Attachments:
You must be logged in to view attached files.Örülök, hogy tetszik.
Az INDIRECT függvény lényege, hogy argumentumként szövegesen lehet neki megadni egy címet vagy címtartományt, és oda fog hivatkozni.
Így szövegmanipulációs függvényekkel és operátorokkal dinamikusan is összeállítható, hogy hová szeretnél hivatkozni, tehát a forrás tartomány is lehet változó.
Pl.: Ha a B1-ben van egy 1-es, akkor mondjuk a C1-be írt képlet
=INDIRECT("A:"&B1)
az A1-re fog hivatkozni, de ha változtatod a B1 értékét, akkor az A oszlopon belül ki tudsz venni adatokat bárhonnan.
Néha a hivatkozásban a munkalap nevét vagy a munkafüzet nevét szokták így dinamikusan venni valahonnan.Az új/régi problémának nyiss egy új Topic-ot, aztán meglátjuk.
Imre
Szia!
Na, egy kicsit eljátszogattam vele.
Hogy jobban megértsd, nézd meg ezt a korábbi anyagot az intervallum tömbökről!Megcsináltam hagyományos módon segédcellákkal is, mint ahogy Te, majd tömbképlettel is.
Extra, hogy az adott évet, amikor a legtöbben voltak, azt is meg lehet kerestetni.Elméletileg az a lényeg, hogy képezni kell két tömböt:
- Az egyik a legkisebb és a legnagyobb év közötti évszámok egyesével növekvő tömbje
- A másik pedig az egyes évekhez tartozó létszámok
- Végül venni a létszámok maximumát
Ezt a két tömböt képeztük le a segéd cellákkal, de lehetséges tömbképletben a memóriában is leképezni.
Hogy kicsit olvashatóbb legyen a képlet, elneveztem az éveket tartalmazó két oszlopot, és külön-külön a be és kilépési évek oszlopait, és egy külön cellában nevekkel is ott a képlet.
Az I17-ben van, amit keresel, alatta a hozzá kötődő évszám.Ha több olyan év is lenne, amikor azonos létszám dolgozott, és ezek a legnagyobbak (pl. több évben is dolgoznának 10-en), akkor csak az első évet tudná megkeresni.
A H oszlopban van a legrövidebb verzió, ami már használ egy elnevezett képletet is, ami az évek tömbjét állítja elő.
Nézz körül a névkezelőben!
Érdekes feladat, érdekes volt vele dolgozni, köszönöm.
Imre
-
A hozzászólás módosításra került: 9 years, 2 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.Szia!
Nem teljesen értem a kérdésedet.
Azt könnyű megmondani, hogy hányan tanítottak egy adott évben. Például DARABHATÖBB függvénnyel.
De ezen belüli szélső értéknek nem látom értelmét.Ha esetleg az lenne a kérdés, hogy melyik évben tanítottak a legtöbben, na, annak már van értelme.
Minden vizsgált évhez kiszámolod az előző függvénnyel a létszámot, és annak veszed a maximumát.
Ezt lehet két lépésben, segédoszloppal, vagy egyben tömbképlettel.Szóval mi is a kérdésed?
Az is jó, ha leírod, hogy a fenti táblázatból mit szeretnél eredményként látni, és miért.Másik, hogy ha lehet, ne képet tölts fel, mert azzal nem tudok tesztelni, így be kellene gépelnem a minta adatokat.
köszi,
Imre
-
A hozzászólás módosításra került: 9 years, 2 months telt el-
horvimi.
Szia!
Ez a feladat csak makróval oldható meg. Valószínűleg elég sokat kell tökölni vele a méretezések miatt, de megoldható.
Az általam talált források közül én ebből indulnék ki:
http://www.mrexcel.com/forum/excel-questions/604604-insert-image-url-images-into-cells.htmlImre
Ok, szóval hogy mindenki értse, van egy ilyen adat:
D3,1333,16GB,C9,Kingston,Hyp,K2,2x8GB,HyperX,Fury,White,Series,HX313C9FWK2/16
és ebből vissza szeretnéd kapni az utolsó vessző utáni elemet.
Pont erről szólt egy korábbi kérdés, csak ott az utolsó per jel utánit kellett kivenni.
Ott van a képlet, csak a per jelet vesszőre kell cserélned.Kipróbáltam, működik.
Imre
-
A hozzászólás módosításra került: 9 years, 3 months telt el-
horvimi.
Szia!
Ez a probléma tipikusan adatbazis kezelés.
Lehetne valamit barkacsolni Excelben is, de hogy használható legyen, makrozni kellene.
Ez tipikusan Access feladat. Abban megolhato programozás nélkül.Imre
-
A hozzászólás módosításra került: 9 years, 3 months telt el-
horvimi.
Tolts fel minta adatot egy munkafuzetbe, és egy színezett oszlopba tedd be kézzel, hogy mit szeretnél eredmenykent kapni,
Elég 10-20 rekordSzia!
Ez egy újítás a 2013 esetén, és nem lehet állítani.
Ez van.Imre
Szia!
Ez minden fájl esetén így van? Mármint hogy két példányban nyit meg.
A két példány címsorában látsz kicsi 1-es, és 2-es számokat?
Ha igen, akkor két ablak van a munkafüzethez rendelve. Az egyiket zárd be, ment egyet, utána zárd be a másikat. Így legközelebb már csak egy ablakkal nyitja meg.A bezárásos probléma egy létező dolog. Bár nálam pl. nem tapasztalom, olvastam róla a neten.Főleg, ha van PERSONAL.XLSB a gépeden.
A probléma abból adódhat, hogy az Excel 2013 külön, független ablakokban futtat minden munkafüzetet. Így pl. most már akár két monitorra, egymás mellé húzhatod őket.Ja, és emiatt eltűnt a kettős bezáró X a jobb felső sarokból. Ha bezárod az utolsó munkafüzetet, a PERSONAL még nyitva van, ezért nem zárja be az alkalmazást. (Hangsúlyozom, hogy nekem bezárja)
Próbáld meg az X helyett a SHIFT+X-el (Close all) vagy az ALT-F4 billentyűvel bezárni.Vagy tedd ki az összes parancs közül a ‘Mindent bezár’ parancsot az eszköztárra.
Imre
-
A hozzászólás módosításra került: 9 years, 3 months telt el-
horvimi.
Szia!
Örülök, hogy működik.
Igen, működne irányított szűrővel is. Ott nem kellene alakítgatni a számokat szöveggé, és csak egymás alá beírkálnád a szűrendő elemek kódjait, csak figyelve arra, hogy szöveges legyen.
A kritérium tartománynál a dinamikus névtartomány kicsit módosul, mert itt kell a kritérium tartomány fejléce is.
Tablazatnév[#All] Táblázatnév[#Mind]
Imre
Szia!
Nagy nehezen azt hiszem felfogtam mit szeretnél. Előre megadnád egy tartományba, hogy mikre szűrjön, és egy makró ezt megcsinálná. Mivel a listád változik, ezért dinamikus névtartományba tennéd.
Ehhez pár dolgot helyre kell tenni.Először nézzük a dinamikus névtartományt.
Ehhez elég, ha egy tartományba kiírod a szűrendő elemeket, legyen egy tetszőleges fejléce, majd táblázattá alakítod, végül elnevezed a táblázatot. Ezek után ez a név követni fogja a tartományt.Másodszor nézzük a tömböket a VBA-ban.
Most csak röviden annyit, hogy ha scak egy dimenziós a tömböd, annak sornak kell lennie, nem oszlopnak. Emiatt a táblázatban lévő adatokat tranaszponálva kell betenni egy VBA tömbbe.Dim filter_array() As Variant filter_array = Application.Transpose(ActiveSheet.ListObjects("proba").DataBodyRange)
Harmadszor a szűrésről
ha rögzítővel felveszel egy autoszűrést, akkor azt látod, hogy a kijelölt elemek idézőjelek között lesznek. Ebből az következik, hogy az autoszűrés szöveges alapú, akkor is, ha számok vannak a szűrendő oszlopban. ez elég gáz, de úgy tűnik ez van.
Ezért ha számokra szűrnél, a tömb minden elemét szöveggé kell alakítani. Ráadásul 8 karakteres szöveggé, hogy a vezető nullákat se veszítsd el. Ez egy ciklus.For i = 1 To UBound(filter_array) 'convert to string filter_array(i) = Format(filter_array(i), "00000000") Next i
Ha ez megvan, akkor mehet az autoszűrés.
ActiveSheet.Range("A1").CurrentRegion.AutoFilter Field:=1, Criteria1:=filter_array, Operator:=xlFilterValues
Az egészet visszatöltöttem egyben, kicsit átalakítottam.
Jelezz vissza, hogy OK-e!
Imre
Attachments:
You must be logged in to view attached files.Szia!
Kis keresgélés után találtam egy képletet a neten, ami megoldja ezt a problémát. Tegyük fel, hogy URL a B2-es cellában van. A C2-be a következő képletet írd:
=RIGHT(B2;LEN(B2)-FIND("*";SUBSTITUTE(B2;"/";"*";LEN(B2)-LEN(SUBSTITUTE(B2;"/";"")))))
=JOBB(B2;HOSSZ(B2)-SZÖVEG.TALÁL("*";HELYETTE(B2;"/";"*";HOSSZ(B2)-HOSSZ(HELYETTE(B2;"/";"")))))
Ez eddig rendben is van, csak az a kérdés, hogy működik? Kicsit elmolyoltam vele, de végül sikerült felfogni, hát lássuk. A magyar verzión magyarázom:
1. A végén lévő HELYETTE fv kitörli a „/” jeleket az eredeti útvonalból. Így annyival csökken a hossza, amennyi „/” jel volt benne
2. Az eredeti hossz és a módosított hossz különbsége megadja, hogy hány „/” jel volt benne
3. A közepén lévő helyette függvény lecseréli az annyiadik „/” jelet „*”-ra, ahány „/” jel volt az eredetiben. Másképp fogalmazva lecseréli az utolsó „/” jelet „*”-ra.
4. A SZÖVEG.TALÁL fv megkeresi, hogy hányadik pozícióba került a „*”. Innentől jobbra kell kivenni az utolsó részt.
5. Mivel már minden info megvan (eredeti hossz, és az utolsó „/” jel pozíciója), a kettő különbsége szerinti számú karaktert kell kivenni jobbról az eredeti útvonalból.Nem annyira vészes, de ezt alapból kitalálni az igazi bravúr.
Imre
Kedves Zoltán!
Most hirtelen a PIVOT mesterkurzusról.
Most pénteken lesz, és egy hely van még.Ami nem indul, az a következő, és ma írtuk ki az időpontot.
http://pentaschool.hu/excel/excel-kimutatas-pivot-tabla-tanfolyam.php
INDIREKT
—————–
Tényleg 32 fájlt kinyitnál?
Vagy csak azt, amelyik telephely adataival éppen dolgozni szeretnél?
Kicsit jobban kellene értenem a modellt, mert most csak sejtem.Amit most értek:
1. Minden tevékenységhez van egy 32 munkalapos munkafüzet. Ez x db fájl, tevékenységenként. Ezeknek mi az elnevezési konvenciója?2. Összesítő fájl.
Itt minden telephelyhez össze akarod gyűjteni a tevékenység fájlokból a hozzá tartozó tevékenységek adatait? ha tehát vesszük az első munkalapját, és oda mondjuk az A1-be beírod, hogy „01”, akkor olyan képleteket szeretnél, hogy az össze tevékenységfájlból mondjuk egymás alá vegye át a „01”-es lapokon lévő adatokat (vagy egy részét)?lehet, hogy kellene valami lebutított mintát feltöltened zip-ben, amiben benne van a modell a szükséges fájlokkal, nem éles adatokkal. Nyilván nem kell 32 munkalap, elég 3 is.
Imre
Szia!
Az a gond az INDIREKT-el, hogy nem tud frissíteni zárt munkafüzetből. Tehát, jó az elgondolásod, de sajnos csak akkor működne, ha az összes külső fájl nyitva lenne, amikor az INDIREKT függvény frissíteni próbál megnyitáskor.
Létezik egy add-in, ami megoldja a problémát, ha gondolod nézz utána.
Itt egy Fóumtopic erről.Imre
Ezt csak úgy lehet megcsinálni, ha leszűröd egy külön sheet-re azokat a sorokat, amik kellenek, és azt nyomtatod.
Nálad egyértelműen megfogható, hogy mi a feltétel, az utolsó oszlop nem nulla.Én ezt haladó szűréssel csinálnám. Ehhez van egy komplett sorozat itt a bázison.
Egy csak erre való lapon megcsinálod a feltétel tartományt, és az eredmény lapról indítod a szűrést.A szűrés futása előtt törölni kellene az előző szűrés eredményét, hogy mindig ugyanazt a lapot használhasd a nyomtatáshoz.
Le is lehetne makrózni persze, de ez attól függ milyen gyakran használod.
Imre
-
A hozzászólás módosításra került: 9 years, 5 months telt el-
horvimi.
Szia!
Nem feltétlenül kell megérteni a konkrét feladatot, ha a kérdés arra vonatkozik, hogy lehet-e számított összetett feltétel alapján szűrni?
ha meg tudod fogalmazni a feltételt a saját szavaiddal, akkor valószínűleg le is tudod írni logikai kifejezésként. Így már létrehozhatsz egy szűrő oszlopot vagy használhatod az Excel haladó vagy irányított szűrőjét.Nagyon jó, hogy az egész egy db táblázatban van, a végére rakható lenne egy szűrőoszlop.
ÉS és VAGY függvényekkel valószínűleg megfogalmazható egy összetett feltétel egy külön oszlopba a végére.Készítettem itt egy haladó szűrésekkel foglalkozó cikksorozatot, nézd át, szerintem ez alapján meg tudod majd oldani. Az adatkezelés kategóriában van az összes.
http://excel-bazis.hu/tutorial-kategoria/adatkezeles
Imre
Segédoszlopban a HELYETTE() angolul SUBSTITUTE() függvénnyel.
A „”*”-ot cseréled a semmire, ami dupla macskaköröm „”.Az új oszlopot érték beillesztéssel rárakhatod az eredetire.
Ha a csillagot tartalmazó cellák össze-vissza vannak, és így macerás lenne, akkor a keresés-cserével is meg lehet csinálni.
De mivel a keresett karakter a csillag, ami speciális joker karakter, ezért a keresendő szövegnek ezt kell írni: ~* (tilde és egy csillag egymás után). Amire cseréled, az meg üresen marad.jelezz vissza, hogy sikerült-e!
Imre
Szia!
Két problémát látok. Az egyik, hogy a modell alapvetően nem helyes, bár használható.
Az a probléma, hogy csak oda tesztek „Y”-t, aki vizsgázott, és nincs érték ott, aki még nem.
Így lesz egy olyan oszlopod, ahol hemzsegnek az üres cellák. Ez elvi hiba, ha PIVOT táblát akarsz használni. Az üres cellákat pedig kerülni kellene.
Én azt csinálnám, hogy induljon úgy, hogy mindenkinél van egy „N”, és ha vizsgázott, átírjátok „Y”-ra.A másik a számított oszlop, amit PIVOT esetén inkább számított mezőnek hívunk, ha létező mezőkből hozol létre egy újat. A művelet egy osztás, amit fordítva tettél ugyan bele, de mindegy. A számított mező ebben az esetben úgy működik, hogy Szum(egyik mező)/Szum másik mező). Ezt csinálja régiónként. DE mivel a Name és Certified oszlopok is szövegesek, így nincs értelme a Szummának, illetve nullát fog adni. Tehát a Te számított meződ nullát oszt nullával, ezért lett mindenhol a nullával való osztás hiba.
A harmadik, amikor a PIVOT-on kívül csinálod meg az osztást. Ez helyes gondolat, csak előbb ki kell kapcsolni a GETPIVOTDATA generálást, ha belekattintasz az adatmezőkbe. Legyenek csak sima hivatkozások. Ez benne volt a tanfolyam anyagában, de itt is olvashatsz róla.
Ha ezt megcsinálod, akkor működni fog.
Végül visszatérnék az elejére, ha rendesen kitöltöd a Certified oszlopot. Így külön lehet kategórizálni a Yes és No címkékre, és azon belül megmondani, hogy hány név van régiónként. És „Y”-ra és „N”-re külön megkérni a Parent, azaz régió összes %-ában, hogy mennyi.
Külön munkalapokon megcsináltam mindkét megoldást, és visszatöltöttem a fájlt.
Majd jelezd, hogy erre gondoltál-e?
Imre
-
A hozzászólás módosításra került: 9 years, 5 months telt el-
horvimi.
-
A hozzászólás módosításra került: 9 years, 5 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.Szia!
Világviszonylatban alapvetően két megoldást lehet látni az ilyesmire az Excel saját eszközeivel.
Az egyik olyasmi, amit te is csinálsz, azaz feltételes formázással hasonlítja a össze a kettőt.A másik megoldás az, hogy makróval, celláról cellára hasonlítják össze, és ha különbség van, akkor valahogy megjelölik. Ez annyiban lehet jobb, hogy teljesen lehet kontrollálni a folyamatot. Így akár még azt is meg lehet csinálni, hogy ha az új verzión futtatjuk a makrót, hogy ha eltérést talál, akkor nem csak megszínezi, hanem megjegyzésként beírja, hogy mi volt a korábbi adat. Ráadásul nem is kell egy munkafüzetbe másolni a két fájlt.
http://www.mrexcel.com/forum/excel-questions/484144-compare-two-sheets-highlight-differences-sheet-attached.htmlHarmadik, ha egy add-in segítségét kéred. Ez valójában egy makró, de telepíthető, és ezután beépül az excelbe, menüpontként vagy új szalagként jelenik meg.
http://www.addictivetips.com/windows-tips/compare-two-excel-2010-worksheets/Jó szórakozást,
Imre
-
A hozzászólás módosításra került: 9 years, 5 months telt el-
horvimi.
Kedves Henriett!
Ehhez makró programot kell írni.
Nézz utána, keress rá, biztosan találsz megoldást.Elkészítem szívesen Én is, csináltam már ilyet, de az már túlmutat ezen fórum keretein.
Imre
2015-08-25-19:07 Hozzászólás: A oszlop szöveges elemeinek megtalálása és kiemelése B oszlopban #2223Utánanéztem, és nem találtam ilyen korlátozást.
2015-08-25-00:14 Hozzászólás: A oszlop szöveges elemeinek megtalálása és kiemelése B oszlopban #2221Ha a 15 karaktert 12-re csökkented, akkor 3 Day Blind már jó lesz, és talán a többi is.
Az F2-ben lehet változtatni, hogy hány karakterig vizsgálja az egyezőséget.Ennél többet nem tudok tenni az ügyért.
Imre
2015-08-22-00:08 Hozzászólás: A oszlop szöveges elemeinek megtalálása és kiemelése B oszlopban #2217Szia!
Feltöltöttem egy lehetséges megoldást, ami a fentiek szerint működik.
Mindkét oszlopot összehasonlítja a másikkal.
Az megoldás lapon, az F2-ben tudod megadni, hogy hány karakterig vizsgáljon, és egyezés esetén tekintsen azonosnak két elemet.Szerintem egész jó.
Imre
-
A hozzászólás módosításra került: 9 years, 6 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.2015-08-21-23:23 Hozzászólás: A oszlop szöveges elemeinek megtalálása és kiemelése B oszlopban #2214Szia!
Ez nem egyszerű probléma.Létezik egy un. Fuzzy lookup nevű ingyenes bővítmény, lehet, hogy az segítene.
Letöltés
leírás 1
leírás 2Hagyományos eszközökkel csak akkor lehetne próbálkozni, ha meg tudnánk mondani, hogy két elemet összehasonlítva, balról kezdve hány karakterig vizsgálja, és ha addig egyformák, akkor tekintse egyformának, különben különbözőnek.
Az is lehet, hogy feltételes formázással nem, csak segédoszloppal lehet megcsinálni.Konkrétan a csillagokról kérdeznék:
A jobb oldali listában az egyes tételek végén a csillagok mit jelentenek?
Azt gondoltam, hogy megjelölted azokat, amiket a Felt. formázásnak is meg kellen jelölni, mert nincsenek a másik listán.De akkor rögtön az elején a „3 Day Blinds*” nem stimmel, mert a másikban van ilyesmi.
Az „Acclivity Photonics*” megint hiányzik, de az „Advent Software*” meg ott van.Szóval ezt tisztázzuk!
Imre
Szia!
Ahogy most csinálod, az rendben van, és az Excel szövegkeresési funkcióiből ez is következik.
ha egy rövidebb, tükkös megoldást keresel, akkor próbáld ki ezt:Tegyük fel, hogy amiben keresel, az a B4-ben van. A C4-be írd ezt a képletet:
=DARABTELI(B4;"*amit-keresel*")<>0
Tehát feltétel szerinti megszámlálás egy cellában, joker karakterekkel.
imre
-
A hozzászólás módosításra került: 9 years, 6 months telt el-
horvimi.
Szia!
Ez egy klasszikus példa a több szintű csoportosítás szerinti összesítésre.
Megoldható függvénnyel (SZUMHATÖBB vagy SUMIFS), illetve PIVOT táblával.Visszatöltöttem a megoldást.
Érdemes lenne eljönnöd október 2-án a PIVOT mesterkurzusra. 🙂
majd írd vissza, hogy erre gondoltál-e!
Imre
-
A hozzászólás módosításra került: 9 years, 6 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.2015-08-11-23:40 Hozzászólás: Dinamikus legördülő listák létrehozása nagy mennyiségű változó esetében #2183Esetleg eljátszogathatnál ezzel:
http://excel-bazis.hu/tutorial/dinamikus-szures-keplettelSzia!
Először a konkrét kérdéshez a konkrét válasz:
A hőmérséklet adatokat el lehet helyezni egy másodlagos függőleges tengelyen, ami a diagram jobb oldalán fog megjelenni. Mivel a Hőmérséklet adatok elég kicsik, nem látszanak, ezért nem nagyon lehet kattintással kijelölni a hozzá tartozó diagram részt.
Ilyenkor azt szoktuk csinálni, hogy:- Kijelölöd a diagramot
- A diagram eszközök Elrendezés fülén a bal oldalon elöl, van egy legördülő menü. Itt válaszd ki a hőmérséklet adatsort
- Ez alatt nyomd meg a Kijelölés formázása gombot
- A megjelenő menüben be tudod jelölni a Másodlagos tengelyt, ami meg is fog jelenni, a hozzá tartozó adatoknak megfelelő skálázással
- Végül, ha akarod, akkor hozzá tudsz rendelni egy másik diagram típust, pl. vonal diagrammot.
Másodszorra viszont azt is mondanám,
hogy ehhez egyáltalán nem kell kimutatást készíteni. Azért nem , mert minden dátum értékhez külön-külön egyedi hőmérséklet és adat tartozik, nincs ismétlődő dátum.Csak ki kell jelölni a három forrás oszlopot, és Beszúrás->Diagram
A másodlagos tengelyt ezután pont úgy kell, mint ahogy leírtam.Visszatöltöttem a fájlt.
Imre
Attachments:
You must be logged in to view attached files.Szia!
A DARABTELI (COUNTIF) függvény feltétel részébe használható a „*” joker karakter. Tehát a „TM*” mint feltétel, a TM-el kezdődőket számolja meg. Tehát a képlet így nézzen ki:
=DARABTELI(tartomany;"TM*")
Ezt szeretnéd?
Imre
2015-07-30-10:49 Hozzászólás: Több, azonosan felépített munkalap adatai egy külön munkalapra listaszerűen #2168Nagyon szívesen, örülök, h jó lett!
Ha lesz lehetőséged, vagy akár többen, szívesen látlak benneteket egy makró tanfolyamon.
Majd megy róla hírlevél is
🙂Minden jót!
Imre
2015-07-30-00:17 Hozzászólás: Több, azonosan felépített munkalap adatai egy külön munkalapra listaszerűen #2164Kedves Patti!
Kicsit foglalkoztam a dologgal, lásd a mellékletet!
Az utolsó (lista) lapon van egy gomb, az futtat egy makrót.Ez az első lapot kihagyva végigmegy minden lapon, és kigyűjti a szükséges infókat.
Nem képletként, ahogy az eredetiben volt, hanem értékként.Képletként is meg lehet csinálni, de most erre volt időm.
ha módosulnak a lapokon az adatok, újra kell futtatni.Induláskor törli a már ott lévő értékeket.
A „lista” lapot átmásolhatod az éles, sok lapot tartalmazó munkafüzet végére, és ha ugyanez a szerkezet, tehát az első lapon intézményi adatok vannak, de a többin a kitöltött táblázatok, akkor mehet is a futtatás.
Majd szólj vissza, hogy erre gondoltál-e!
Minden jót,
Imre
-
A hozzászólás módosításra került: 9 years, 6 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.2015-07-28-22:12 Hozzászólás: Dinamikus legördülő listák létrehozása nagy mennyiségű változó esetében #2160Szia!
Ez meglátásom szerint klasszikus PIVOT tábla probléma.
Táblázattá alakítod a tartományodat, majd készítesz egy PIVOT táblát (Kimutatás)
A Sor területre egymás alá húzd be a rendelésszámot, majd a terméket.A szumma területre nem kell semmit tenni.
A rendelésszámot ezután szűrheted a kívánt értékre, és a második oszlopban csak a hozzá tartozó termékek lesznek.
Imre
Örülök, hogy sikerült.
Erre a feladatra is van több megoldás, a makrótanfolyamon mindig megcsináljuk.A rendezés utáni változás érzékelés, amit te csináltál, az is jó lehet.
A programodat kicsit érdemes lenne struktúrálni, illetve olvashatóbbá tenni, csak a saját érdekedben.
De ez nem ide való téma.imre
Szia!
Szerintem ilyet nem lehet csinálni. Az összefűzéskor egy string jön létre a „2,1” tartalommal.
ha ezt átadod a Cells függvénynek, akkor az ennyiedik cellát próbálja meghivatkozni. Ez nem lehet sztring.A megfordítás esetén pont ugyanez a baj, tehát úgy sem fog menni.
Nekem az a furcsa, hogy miért nem fut hibára?Ha jól látom, valami olyasmit szeretnél, érzékelni, hogy mikor van egy oszlopban egymás alatt két egyforma érték. Ez egy működő megoldás lehet:
Sub megoldas() sor = 2 oszl = 1 Do akt = Cells(sor, oszl).Value kov = Cells(sor + 1, oszl).Value sor = sor + 1 Loop Until akt = kov End Sub
Több megoldás is lehet erre, akár sokkal elegánsabb is. Az a kérdés, hogy miután érzékelted az egyezést, mit szeretnél tovább csinálni.
A Te második megoldásodat, ami működik ugyan, nem javasolnám a select-ek miatt. Hacsak nem pont ez a folyamat lényege. Select elég a végén is, amikor megvan a pozíció.
imre
Közben megcsináltam a példát, feltöltöttem.
Fontos még arra figyelni, hogy a keresendő és a keresett adat azonos formátumú legyen.
Az összefűzésnél a cikkszámot vettem előbb, és utána a raktárhelyet.Imre
Attachments:
You must be logged in to view attached files.Szia Éva!
Fájlt feltölteni max. 512 MB-ig úgy tudsz, hogy ha beléptél, akkor balra lent találsz egy Fájl kiválasztása gombot.
Közben felfogtam, hogy mit szeretnél csinálni. Ez klasszikusan több feltétel szerinti keresés, mondjuk VLOOKUP.
Úgy szokták csinálni, hogy a feltétel oszlopokat egy új oszlopba összefűzik (függvénnyel vagy „&” operátorral). Ezzel teheted egyedivé, az azonos cikkszám, de eltérő raktárhely sorokat. És ebben az oszlopban végezzük.
Tegyük fel, hogy az alapriportban az elejére létrehoztál egy „rakt-cikk” oszlopot, és ide összefűzöd a raktárhely és a cikkszám mezőket.1. Az új táblának képzed a fejlécét. (Cikkszam, termek, raktárhelyek egyesével)
2. A cikkszam és termék neveket kitöltöd valahonnan
3. Jön a képlet az első raktárhely oszlopba (pszeudo kód)=VLOOKUP(cikkszam&raktarhely;alapriport_teljes tabla;5;0)
Feltéve, hogy a mennyiség az alapriportban a mennyiség az ötödik oszlop lett, mert az összefűzött oszlopot az elejére tetted.
Kíváncsi vagyok, sikerül-e!
Imre
Szia Éva!
Egy kicsit jobban kellene definiálni a feladatot. A leírás alapján ez nekem inkább szűrésnek tűnik, mint keresésnek. Feltételként pedig csak a raktárhelyet említed, és nem érzékelek másik feltételt.
A fenti példád alapján azt gondolom, hogy a raktárhely oszlopban ismétlődhetnek a raktárhely kódok, de más-más mennyiséggel. Neked pedig egy adott raktárhelyhez tartozó mennyiségek kellenek.De mivel ez sima autoszűrővel megoldható lenne, azt gondolom, mégsem ennyire egyszerű a feladat.
Esetleg csatolhatnál egy minta munkafüzetet, amiben benne van egy minta az alap táblából, és mellette vagy egy másik lapon pedig az, amit eredményként szeretnél látni.
Imre
Szia!
esetleg itt nézz utána:
http://stackoverflow.com/questions/14505852/create-thunderbird-email-from-excel-macro
imre
Kedves Roland!
Védett munkalapokon a táblázatok nem működnek rendesen.
A fenti problémára csak makrós megoldás létezhet.
Azt is jó alaposan definiálni kell, mielőtt bárki nekifog.Sajnálom,
imre
Szia!
Köszönöm a kérdést! Utána kellett egy kicsit néznem, és azt találtam, hogy ez egy alap Excel beállítás, ami különben nagyon hasznos is lehet.
Excel 2003-ban ezt kell csinálni, ha nem akarod:
Tools->Opions->Edit lap -> „Extend List Formats and Formulas” opciónál vedd ki a pipátMagyar verziónál: Eszközök->Beállítások->Szerkesztés lap -> Az angol szöveg valamilyen magyar megfelelője
Excel 2007 és felette:
Excel beállítások
Speciális->Szerkesztés ->
Magyar verzió: Adattartomány végén a formázás és a képletek folytatása
Angol verzió: Extend data range Formats and FormulasKülönben meg azt tapasztaltam, hogy ha a formátumot törlöd a már kitöltött tartomány alatti részekről, akkor is le lehet beszélni a folytatásról.
Imre
Szia!
Először is bocs, de módosítottam a Topic címét, mert az semmilyen módon nem utalt a tartalmára.
A mellékletet tanulmányozva ez klasszikusan a kamatos kamat időszakonkénti számítása.
tehát időszakonként mindig ugyanannyi százalékkal növeled az előző időszak már növelt összegét.
Kivéve az elsőnél, ahol az eredeti alap összegből indulsz ki.A kérdésedet úgy értelmeztem, hogy tudod a kezdő értéket és a végértéket, illetve tudod az időszakik számát, azaz hogy hányszor szeretnéd növelni az összeget.
Amit keresel, az az, hogy mennyivel kell növelni időszakonként, de amennyivel növeled, az mindíg állandó.Ez célérték kereséssel megoldható feladat.
A mellékletet visszatöltöttem, a megoldás fülön van a leírás, remélem erre gondoltál.Imre
Attachments:
You must be logged in to view attached files.Szia!
Van egy makró nélküli és egy makrós megoldás.
Nézzük először a makró nélkülit:
1. Kijelölöd a másolandó tartományt
2. Ctrl-C
3. Kijelölöd a többi munkalap füleket, ahová másolni szeretnéd (az eredetit NE)-Csoportosítás
4. Bármelyik kijelölt lap céltartományának első cellájába kattintasz
5. Ctrl-V
6. Csoport felbontásaKipróbáltam, nekem működött.
Mondjuk az 50+ lap kijelölése elég macerás lehet, még ha shift-el is csinálod.Tehát a titok az, hogy az eredeti lap ne legyen benne a csoportosított lapok között.
Jelezz vissza, hogy működik-e!
Imre
Köszönjük a megosztás!
Általában fordítva szokott lenni, azaz felületről működik, makróval nem.Szia!
Ránéztem egy pillanatra. Nagyon érdekes probléma.
Milyen nyelvű Excel-t használsz?A makróval valóban működik, és a felületen meg nem.
Nem kéne neki működnie makróval sem.
Ha a rövid hónapneveket átírtam a magyar megfelelőjére, akkor egy kicsit jobb lett helyzet.#Péter, örülök, hogy látlak itt!
#Mormogi: Péter tanácsa mindenképpen megfontolandó. ha a két táblázatot mindenképpen külön munkalapokon kell tárolnod, akkor makró nélkül nem lehet megoldani a kérdést.
Fontos lenne még, hogy lehetőleg azonos szerkezetű és elhelyezkedésű legyen a két táblázat.Volt nemrég egy hasonló kérdés, ahol visszatöltöttem egy makrós megoldást. Ott dátomra kellett leválogatni egy új munkalapra két (vagy több?) munkalap sorait.
Szia!
Összeraktam egy működő verziót.
Használata:
– Az 1. lap legyen mindig az összesítő
– A B1-ben legyen a szűrendő dátum (éééé.hh.nn) formátumban
– A 2. laptól hátrafelé legyenek a gépsorok lapjai
– A gépsorok lapjain az utolsó oszlop legyen feltöltve a munkalap nevével
– A dátumokat a gépsor lapokra teljes dátum formátumban kell feltölteni (éééé.hh.nn)– Az első lapon a korábbi szűrések eredményét lehet törölni a „Töröl” gombbal
– Egy dátum beírása után a „Szűr” gomb kigyűjti a gépsor lapokról az adott dátumú sorokat
– ha több dátumra szűrnél, akkor a szűrést minden új dátum beírása után ismételgetni kell
– Két törlés között csak egymás után gyűjtögeti.Az első lapon a B1-be lehet majd tenni legördülő listát is.
Ezt csak egy forrásból lehet megadni, tehát két munkalap dátumaiból csak úgy lehet megcsinálni, ha előbb egy külön tartományba egymás után másolod az össze gépsor lapról a dátumokat, majd eltávolítod az ismétlődéseket, és a maradékot adod meg a legördülő forrásaként.Hogy tetszik?
Imre
Attachments:
You must be logged in to view attached files.Szia!
Hát, így távolról nem fogom tudni megoldani. csak úgy tudnék esetleg segíteni, ha feltöltenéd, vagy esetleg privát email-en elküldenéd a fájlt, és némi segítséget, hogy tudjam reprodukálni a dolgot.
Imre
Na ok, akkor tölts fel mintát ahogy kértem, aztán meglátom, hogy mit és mikorra tudok segíteni.
Imre
-
A hozzászólás módosításra került: 8 years, 11 months telt el-
-
SzerzőBejegyzés