Hozzászólások
-
SzerzőBejegyzés
-
Szia!
Nem tudom, hogy kaptál-e már választ máshol esetleg.
Ezt a problémát VBA kóddal lehet megoldani.
Van egyApplication.ConvertFormula
függvény a VBA-ban.Egy lehetséges megoldás:
Sub ConvertFormulasToAbsolute() Dim rngCell As Range For Each rngCell In Selection With rngCell If .HasFormula Then .Formula = Application.ConvertFormula(.Formula, xlA1, , xlAbsolute) End With Next rngCell End Sub
Használat / Működés
————————-
Kijelölöd a tartományt, amiben minden hivatkozást abszolúttá szeretnél tenni, majd lefuttatod a fenti kódot.
Végigmegy a kijelölés összes celláján, és ha képlet van benne, akkor megcsinálja a hivatkozások módosítását dollárjelesre (abszolútra)Kipróbáltam, nekem működött.
Források
https://www.mrexcel.com/board/threads/how-change-multiple-cells-with-ranges-from-relative-to-absolute-references.793992/
https://www.mrexcel.com/board/threads/convert-a-range-of-cells-formulas-from-relative-to-absolute.27670/Imre
-
A hozzászólás módosításra került: 2 years, 8 months telt el-
horvimi.
Nagyon örülök!
Ezzel én is tanultam valami újat.
🙂
ImreSzia!
Olyasmire gondolsz ugye, mint a Ctrl-F kereső ablaka, ami mögött simán lehet bármit csinálni, majd visszatérni a kereséshez.
Első felindulásomba azt akartam írni, hogy ilyesmit nem lehet egy programon belül csinálni. Arra gondoltam, hogy a kereső ciklus a hiba esetén elmenthetné az aktuális futási környezetet, és a következő indításnál lehetne opció, hogy onnan folytassa.
Aztán mégis utánakerestem a dolognak, és a sok NEM LEHET között találtam két linket, ahol úgy néz ki, van megoldás.
Nem próbáltam, de nézd meg!Ez az első
https://www.mrexcel.com/board/threads/pause-macro-then-resume-macro.673602/
Itt Gary’s Student nevű user megad egy linketMásodik
https://answers.microsoft.com/en-us/msoffice/forum/all/vba-script-to-pause-macro-allow-editing-then/53027408-ed41-4300-b42e-ed2fc20b8e9c
Itt meg Andreas Killer kommentjei lehetnek hasznosak.A kulcs a DoEvents parancs, ami egy gyorsan pörgő ciklus közben megcsináltatja az Excellel a közben történt eseményeket.
Szóval kiteszi a form-ot nem modális módban, tovább megy, de belefut egy ciklusba, ami addig pörög, amíg a for látszódik.
És közben megcsinálja azt, amit a user tesz.
Én legalább is ezt képzelem.Jelezz vissza, hogy mi lett!
Imre
Szia!
Ha már Excel-ben van, akkor macerás a helyzet.
De én vélelmezem, hogy ez eredetileg nem Excelben van, hanem egy másik rendszerben, ahonnan ki lett exportálva Excelbe.
Más kódolást használ, valószínűleg UTF8 vagy ilyesmi.1. Ha az eredeti rendszerben exportálásnál lehet választani, akkor CSV formátumban kellene kimenteni, és utána Excelben PowerQuery-vel vagy korábbi szöveges exportálóval megnyitni, ahol meg lehet adni a kódolást.
2. Ha csak Excelbe lehet, akkor próbáld meg az Excel-t kimenteni CSV-be (Mentés máskét), és utána áttérni az 1. lehetőségél leírtakra.
3. Az sem lehetetlen, de kicsi az esélye, hogy az exportáláskor meg lehet adni a kódolást.
Most ezek jutottak eszembe.
Imre
Szia!
Kicsit eljátszottam vele, le is egyszerűsítettem.
Kacifántos amit akarsz, de megcsinálható.
Visszatöltöm.Attachments:
You must be logged in to view attached files.Hát ezeket elmulasztottad közölni 🙂
De mindegy is, mert ezek az egyszerűen nem megoldható kategóriába esnek sajnos.Azt még megfontolhatod, hogy mi a kevesebb munka:
Egyik, hogy a visszamásolást az egyenlőségjelek cseréje utám értékként illeszted be, majd visszacserélve a képletek már működni fognak, a feltételes formázást és a listamenük hivatkozásait pedig kézzel létrehozod újra. (Nyilván csak a formulákat kell átmásolni a forrás munkafüzetből.)
Esetleg ezeket az egyik lapon (Ahol a listafotrrások vanank pl.) szövegesen le lehetne tárolni, mondjuk egyenlőségjel nélkül.Másik, hogy az átmásolás után az utóbbiakat manuálisan javítod meg.
Makróval biztosan megcsinálható persze.
Imre
Nekem simán megcsinálja a # jelek visszacseréjét.
Próbáld meg egyesével a cserét (Nem az összes cseréje, hanem Csere egyesével). Lehet, hogy csak az egyik cella vagy oszlop miatt dob hibát.
Ha csak mindent kijelölsz, és = jel csere nélkül próbálod átvinni, akkor vissza fog hivatkozni, ahogy le is írtam az előző válaszban.
És olyankor a neveket is viszi, vinni akarja.Teljesen lemodelleztem a dolgot, tehát két munkafüzet között csináltam, nevekkel.
Ha előbb minden képletben lecseréltem az = jelet, majd a mindent kijelöllel átvittem, akkor:
– Nem vitte a nevet újra magával (nyilván, mert nem ismerte fel névként)
– Visszacserélés után működtek a képletek, a neveket használó képletek is az aktuális munkafüzetben (az ugyanolyan nevű lapokra hivatkozások persze)Amikor nem csak a tartalmat vittem át, hanem kitöröltem a régi munkalapot, és az újat munkalapként másoltam át, akkor a képletek jók lettek a visszacserélés után, de a nevet átvitte még egyszer, és az visszahivatkozott oda, ahonnan hoztam.
Imre
-
A hozzászólás módosításra került: 2 years, 8 months telt el-
horvimi.
Szia!
Sajnos ez egy komoly probléma az Excel felhasználók számára.
Elegendő egy olyan cellát átmásolni egy másik munkafüzetbe, ami nem az aktuális lapra hivatkozik.
A másolás után a képlet vissza fog hivatkozni abba a munkafüzetbe. ahonnan átmásoltad.
Ha egy teljes munkalappal teszed mindezt, akkor mindem másik munkalapra hivatkozó képlet vissza fog hivatkozni az eredeti munkafüzetre, és az adott lapon érvényes névtartományok is.Ez ellen normális, beépített lehetőség nem létezik, tehát elvileg minden hivatkozást pl. keresés-cserével ki kellene javítani.
Barkács megoldás, ami jó lehet:
1. A lap másolása előtt a keresés-cserével az egyenlőségjelet cseréled valami spec karakterre. Pl. Hash tag (#)
Ezzel a képletek sima szövegé válnak, nem akarja őket kiértékelni.2. Átmásolod a munkalapot, majd. visszacseréled
Sajnos a nevek kérdését ez nem oldja meg, de ha az előző módszerrel az egyenlők cseréje után nem a munkalapot másold át, hanem a munkalap tartalmát (Mindent kijelöl -> C/P), akkor szerintem a neveket nem fogja vinni.
Majd írd meg, hogy sikerült-e!
Imre
Szia!
Lényeges kérdés még, hogy ezt a több szintű választó menüt egy táblában soronként akarod, (pl. egymás utáni oszlopokba), vagy egy táblához csak egy 3 szintű szűrés tartozik, pl. a tábla felett 3 cellában?
Előbbi esetben nem annyira látom a megoldást SZŰRŐ függvénnyel VBA nélkül. DE más se:
https://answers.microsoft.com/en-us/msoffice/forum/all/using-unique-filter-formula-inside-the-data/53a292ad-5d7a-468d-8764-e10442d8421e?page=1Utóbbi esetben a SZŰRŐ függvénnyel van azonnali megoldás. Annyi szűrő függvény kell, ahány szintje van a menünek (jelenleg 3)
1. szint: Az érvényesítés forrása: A felelősök egyedi listája (EGYEDI függvény). Ha kiválasztotta a felelőst, akkor egy SZŰRŐ függvénnyel kiveszed egy tartományba azokat a városokat, ahol a kiválasztott a felelős
2. szint: Az érvényesítés forrása: Az előző lépésben kivett városok. Ezután még egy szűrő függvény, ami egy másik tartományba kiveszi az első kettő ÉS kapcsolatából az intézmények listája
3. szint: Az előző lépésben kivett intézmények listája (tömbje)Mivel a szűrt listák mérete változhat, ezért dinamikusan kel hivatkozni a tömbökre a legördülő menü forrásában (#)
Tervezek erről írni egy cikket, de addig is itt egy példa:
https://www.excel-university.com/dependent-drop-downs-with-filter/Imre
Szia!
Mielőtt továbblépnénk, kérdezem, hogy milyen Excel verziót használsz?
Ha esetleg 365, akkor az abban lévő FILTER (SZŰRŐ) függvénnyel elég jól, és egyszerűen meg lehet csinálni a több szintű függő listákat.Ha korábbi Excel-ed van, akkor ajánlom figyelmedbe egy korábbi cikkemet:
https://excel-bazis.hu/tutorial/tobbszintu-legordulo-lista-profi-megoldasImre
A kettes pontot PIVOT-tal és VBA-val úgy csinálnám, hogy:
– Kitenném checkboxoxra, hogy milyen mezőket szeretne megjeleníteni
– Ha bejelölte őket, akkor megnyom egy gombot, és egy VBA kód törli a PIVOT-ből az éppen ott lévő mezőket, és betenné a megjelölteket.Imre
Szia!
A fájlt most nem tudom érdemben megnézni, de néhány dologhoz hozzászólnék:
1. A függvényes megoldáshoz használt dolgok jónak tűnnek, nem hinném, hogy lenne jobb megoldás, de nincs kizárva.
2. Hogy melyik szumma érték jelenjen meg a PIVOT-ban (vagy PIVOT chartban), azt szeletelővel nem lehet szabályozni. Check box-al és VBA-val lehetne.
3. Az ELTOLÁS (OFFSET) függvény az, amit keresel, hogy egy kezdő cellához képest változó méretű tartományt tudj megadni.
Nézz utána, eléggé egyértelmű
4. Sima grafikon (azaz nem PIVOT chart) esetén nincs beépített részletezési lehetőség
5. Az Online Excel jelenleg még nem támogatja (és valószínűleg nem is fogja) a Form vagy ActiveX controll-okat.
6. A Date-Picker tudomásom szerint csak 32 bites verziókban van meg. Ha neked 32 bites az Excel 2013-ad és mégsincs ott, akkor nézd meg ezt:
https://www.ablebits.com/office-addins-blog/2016/10/12/insert-calendar-excel-datepicker-template/#Register-date-pickerImre
-
A hozzászólás módosításra került: 2 years, 9 months telt el-
horvimi.
Ha külön-külön jó, akkor együtt is jónak kell lennie.
A mintádat átalakítottam, visszacsatoltam. Szerintem jó.A feltételes formázás fronton elég gáz a helyzet.
Ha bármelyik színes cellára kattintasz és megnézed a szabályokat (szabályok kezelése), akkor látod, hogy rengeteg szabály van, pedig csak kettőnek kellene lennie.Amíg működik és nem lassú, nem érdekes, csak olyan izé…
Imre
Attachments:
You must be logged in to view attached files.Bocsi, hogy elsőre ezt írom, de nem okos dolog a megszakítás már úgy általában sem.
Persze előfordul, hogy nincs ráhatásunk az oszlopsorrendre, de legtöbbször van.Tegyük fel, hogy nincs, mert mondjuk valami kötött rendszerből így jön ki, akkor meg add össze a két szorzatösszeget, és hasonlítsd az összes oszlopszám mínusz 3-hoz.
Imre
Az első sorhoz tartozó képletet úgy kell megírni, hogy az adatsor hivatkozása nincs rögzíthető, viszont az alsó és felső határokat tartalmazó tartomanyi hivatkozások van a sor le van rögzítve, de az oszlop nincsen. Akár mindkettőt is le lehet rögzíteni, azzá dollarjeletni.
Ha a képletet lehuzod és nem jó, akkor valószínűleg ez a hiba.
Próbáld.ki, hogy lehuzas után kettőt kattintasz az egyik eredményen. Így megmutatja színekkel, hogy honnan veszi az adatokatImre
Szia!
Hozzátennék egy gondolatot:
Ha jól gondolom, akkor nem elég az, hogy melyik sorban van olyan tétel, ami az aktuális oszlop tetején megadott határértékeken kívül van, hanem azt is látni akarod, hogy melyik az a tétel.
Erre a feltételes formázásnál nem jut jobb eszembe.De azt ellenőrizni, hogy van-e legalább egy, ami ne stimmel, lehet képlettel is. És akkor nem kell csak emiatt makrósnak lenni a munkafüzetnek.
Ez egy tömbképlet, ami a teljes aktuális sort hasonlítja az alsó határérétékek sorához , majd szorzással (logikai ÉS) ugyanazt a sort a felső határértékek sorához. Az eredmény egy logikai tömb, amiben ott lesz egyes, ahol a határokon belül van, és ott lesz nulla, ahol a határokon kívül van. Ezeket az egyeseket összeadva megkapjuk, hogy hány stimmelő oszlop van az aktuális sorban.
=SZORZATÖSSZEG((B3:E3>=B$1:E$1)*(B3:E3<=B$2:E$2))
Ha ez megegyezik az oszlopok számával, akkor minden tétel OK, tehát a kimenet is OK, különben nem OK
Csatolok egy minta munkafüzetet.
Imre
-
A hozzászólás módosításra került: 2 years, 9 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.Szia!
Talán a kérdező is visszatér és ad némi visszajelzést.
A rangsorolásnál mindig probléma az azonos értékek kezelése.Az általam ismert rendszerekben az azonos értékek azonos rangsorszámot kapnak.
Az eltérések ott szoktak lenni, hogy a nagyságrendben következő érték rangsorszáma mi legyen.Ha pl. van két egyforma és mindkettő rangsora mondjuk az 5, akkor a következő rangsor lehet 6, de lehet 7 is, mert kihagy egyet a két 5-ös miatt.
Szóval ismétlődések esetén probléma lehet, a megoldás bonyolultsága a szituációtól függ.
Imre
Nagyon klassz megoldás!
Jó nagy hátraszaltót csináltál a dátum témában.Én nem is vettem észre, hogy a 127. sorig szóközök vannak a dátumban, ezért szöveg és utána valamiért rendes dátum lesz.
azt azért szögezzük le, hogy ez adathiba. Ha minden dátum rendes dátum lenne az első táblában, akkor erre nem lenne szükség.
Szval amit a „C” oszlopban csináltál, az baráti 🙂Aztán a B oszlopban átveszed a C oszlopban előállított dátumot, ha az L és a H oszlop is pozitív számot tartalmaz.
De az igazán brilliáns a D oszlopban képzett RANKING. Nem találkoztam még ezzel a megoldással, nagyon tetszik!
Megnézi, hogy az aktuális dátumnál hány nagyobb dátum van az egész oszlopban, és az eredmény+1 lesz a nagyságrendi sorrendje (rank-je).
Ha nulla nagyobb van, akkor az aktuális dátum a legnagyobb (0+1)
Ha egy nagyobb van, akkor az aktuális a második legnagyobb (1+1) és így továbbZseniális! Feltéve, hogy egyik dátum sem fordul elő többször.
Ahol meg nulla jött ki a B oszlopban, ott a Rank a legnagyobb lesz (mindenhol ugyanaz, 111), de az nem érdekel minket, mert csak 15-ig kell nézni.
És akkor az alsó, kis táblában már csak meg kell keresni az 1-15 sorokat a felsőből. Ez a tisztázat.
Azért is klassz, mert régebbi (2013) Excelen is működik.
Bocsánat az „okoskodásért, de lehet, hogy valakinek jól jön a magyarázat.
Köszi @fjns a munkádat!
Kiegészítés
Az Excelben van egy SORSZÁM nevű függvény, ami a rangsorolást megcsinálja ugyanúgy, mint a D oszlopban lévő képlet.
Ha a D4-be ezt írod: =SORSZÁM(B4;B:B), akkor ugyanaz jön ki.Ez a függvény már csak kompatibilitási okok miatt van az Exelben, hogy 2007-es és régebbi Excelben is működjön.
2010-ben behozták a RANG.ÁTL és a RANG.EGY függvényeket, amik kicsit árnyaltabb megoldásokat tudnak.Imre
-
A hozzászólás módosításra került: 2 years, 10 months telt el-
horvimi.
Szia!
A) Nem vagyok vizualizációs szakember, és az Excel diagramjainak beállításában sem vagyok nagyon elmélyedve.
A 2013-as verzióval pedig ki em tudom próbálni.Nálam a 365-ben pl. automatikusan megcsinálja az összekötést, be sem kell állítani semmit, sőt, inkább külön kérni kell, hogy ne tegye, azaz beállítható, hogy a #HIÁNYZIK cellákat tekintse üresnek, és nem beállítani, hogy kösse össze az adatpontokat
365-ben különben az is megoldható lenne, hogy egy külön táblába kigyűjtsd a a nagy táblából a szükséges rekordokat. Mindez dinamikusan, a táblázat alapján automatikusan frissül, ha új adat kerül a tábla végére.
B) Ezt már lejátszottad, így van.
C) A trendvonalakkal kapcsolatban fogalmam sincs, de szerintem mindegy, mert ha te számolod, ugyanannak kell kijönnie, mint ha ő csinálja. Hasonlítsd össze a két vonalat.
D) A naponta több adat az nem tudom mit takar, csak gondolom, hogy az input táblákra vonatkozik. Bár a segédtáblában mindig az első 15 dátumhoz veszel ki adatot, ezért annak a mérete elvileg nem változik.
Imre
Na most kerültem gép elé, hogy megnézzem.
Elsőként egy elvi dolog.Az adatbázisokban a bárminemű kódokat, azonosítókat, amelyek csak számjegyekből állnak, speciális okok miatt szöveges formátumban szokás tárolni. Így biztosított, hogy ha esetleg nullával kezdődne, akkor az megmaradjon, vagy ha esetleg hosszú, sok (>15) számjegyből áll, akkor az is megmaradjon pl. Excelbe exportálás során.
Magyarázat is van rá, de most csak próbáld ki, ha egy 15 jegynél hosszabb számot írsz egy cellába, majd megformázod számként, akkor mi lesz az eredménye. A végét nézd, a 15. jegy után!
Szóval a te Export fájlod is ilyen, nagyon helyesen, a zöld háromszögek és a figyelmeztetés mutatja is, hogy szövegként tárolt számok. Ezek azok, amik értékként beillesztve a mintába, továbbra is szövegek maradnak.
A mennyiség vagy a nettó érték pl. jól megy át.A szövegként tárolt számok értékként beillesztve is szövegek maradnak, hiába volt a célcella formátuma előre szám típusra állítva
Az én jelen ismereteim szerint nincsen rá azonnali megoldás valami speciális beillesztéssel. Makrót persze lehet rá készíteni, ami a megadott oszlopokban a szövegeket számmá alakítja.
Leggyorsabb fix amit tudok
Az érték beillesztés után, ha kipróbálod mondjuk a „Bevárásló kosár száma” oszlopban, hogy az első beillesztett cellát kijelölöd, majd nyomsz egy F2-t (szerkesztő mód) és utána egy ENTER-t, akkor „megjavul”. Mivel nem akarjuk minden ilyen problémás cellán ezt egyesével csinálni, kiadunk egy egysoros makró parancsot.
1. Megcsinálod az érték beillesztést
2. Hagyod a beillesztett részt kijelölve
3. Átlépsz a makró szerkesztőbe (ALT-F11)
4. kinyitod a parancs ablakot (Immediate Window) Ctrl-G
5. Oda begépeled, hogy:selection.formula=selection.formula
-> ENTERNálam ez működött, minden problémás oszlopban a szövegként tárolt számok számmá alakultak.
Csak akkor fog menni, ha a táblázat oszlopai előre szám formátumúak, de ez nálad így van.És persze még jobb lenne a rendszert úgy alakítani, hogy az azonosítók szöveges típusúak legyenek itt is, és ha erre épül valami FKERES vagy ilyesmi egy másik táblából, akkor ott is. Bár a keresési formulában a keresési értéket szövegessé lehet tenni több módon is.
Bocs, hogy hosszú és lényegében kevés segítség, de tényfeltáró 🙂
Imre
Szia!
Mivel nem tettél fel mintát, csak találgatni és kérdezni tudok.
– Vagolaprol akarsz beilleszteni, vagy az export file megven külön?
– Haa kulon, milyen formátumban? (Csv, txt, Excel)
– Milyen verziójú Excel-t használsz?
– Konkrétan hogy néz ki amit be akarsz illeszteni?
Hogyan próbáltad eddig?Szia!
A probléma, illetve feladat érthető.
A jelenleg használt adatstruktúra okozza a nehézséget.Jelenleg a keresést 15 oszlopban kell végezni egyesével, az egészet ennek megfelelően sokszoros IF függvényekbe téve.
Algoritmikusan leírva:
Ha az aktuális gépkód az első oszlopban van, akkor „1. gépcsoport” különben ha a második oszlopban van, akkor „2. gépcsoport, különben ha …..Javaslatom
Én a 15 gépcsoport oszlopból egy két oszlopos táblát csinálnék:
Kód és Gépcsoport.
Az első 15-nek azonos lesz a gépcsoportja, a második 15-nek is és így továbbA keresést ebben a 2 oszlopos táblában VLOOKUP-al lehet végezni.
A PIVOT egy másik tészta, de ha megvan minden gép gépcsoportja, akkor az már könnyű.Imre
Ismét örülünk 😊
Szia!
Most csak telefonról olvasom.
Az ÖSSZESÍT függvénynek még lehet adni, hogy a hibaüzeneteket tartalmazó cellakat hagyja ki az osszesitesbol.
Egyből lehet vele atlagolni.Imre
Jaj, ne haragudj, az VLOOKUP-ot átírtam FKERES-re, de az INDIRECT-et elfelejtettem.
Nálam most épp angolon állt, mert olyan csoportot tanítok.A megoldott státuszt te is tudod állítani meg én is.
Most én bejelöltem megoldottnak…
Imre
Csatoltam neked a nálam működő verziót
Imre
Attachments:
You must be logged in to view attached files.Szia!
Arra gondoltál már, hogy =”EUR” módon add meg?
Így hozza a következő sorban magától, mivel ez képlet.Imre
Szia!
Első blikkre szerintem neked az INDIREKT függvényre van szükséged.
Ezzel a függvénnyel lehet egy hivatkozást szövegesen előállítani.
Ha jól értem, akkor olyasmit szeretnél, hogy az első sorban a hivatkozásban lévő munkalap neve ‘0401’ legyen, de ahogy húzod lefelé, ez magától változzon ‘0402’ re és így tovább.
1. Elsőre javasolnám, hogy ne két munkafüzetben legyenek a dolgok.2. A napokat ’01’-től írd be ’31’-ig, így használhatók lesznek a képletekben az adott hónap adott napjának előállításához.
Az első cellába szimpla aposztróffal beírod, hogy ’01, majd lehúzod 31-ig. Így szövegesen képzi a napok sorszámait.3. A mukalapneveket a napok számozása mellé egy külön oszlopba képezd le. Így egyszerűsödik a dolog.
Pl. a 01 szám mellé jöjjön a 0401, a 2-es mellé a 0402, és így tovább. Ezeket lehet majd befűzni a hivatkozásba.
Itt persze felmerülhet, hogy nem mindig áprilisról van szó, ezért az aktuális hónap számát kitehetnéd egy cellába. (Pl. A2)
Tegyük fel, hogy a 01-es sorszám a B4-ben van. A C4-be mehet az, hogy: =$A$2&B4, majd lehúzva, kijönnek a napokhoz tartozó munkalapnevek.4. A következő két oszlopba (D és E) menő FKERES keresési tábláját dinamikusan, INDIREKT függvénnyel rakhatod össze. D4-ban van ez:
=FKERES($A$1;INDIRECT(C4&"!$A:$C");2;FALSE)
A1-ben van a keresett neved (Sándor), C4-ban van 04015. Lehúzod az FKERES képleteket
Imre
Még lehetne úgy is csinálni, de szerintem szükségtelen.
Egy esetileg futtatható makró, ami ellenőriz.
De ez egy ciklus, nem lehet makró rögzítővel felvenni.A VBA Dir függvénye az, amivel ellenőrizni lehet egy fájl létezését.
Imre
-
A hozzászólás módosításra került: 2 years, 11 months telt el-
horvimi.
Szia!
A hiperhivatkozas beirasakor nem ellenőriz.
Lehet egy olyan makrót írni, ami végig ellenőrzi, hogy a megadott útvonalon valóban letezik-e a megadott fájl, és egy oszlopban egy flag-gel jelzi.
Erre szurve, még a hiperhivatkozas létrehozása előtt javithatod a hibákat.Imre
Szia!
Sajnos ezt nem lehet megoldani natív eszközökkel.
Tehát ha véded a lapot, akkor a táblázat nem fog automatikusan kibővülni.A rejtett tulajdonság, azt jelenti, hogy a szerkesztőlécen nem látszódik a tartalom. Akár konstans, akár képlet.
Imre
Kedves Roland!
Nem kell hozzá feltétlenül makró.
Csatoltam egy demót natív Excel eszközökkel.A makró megírása tervezéssel, tesztelgetéssel több órányi feladat lehet, annyi nekem most nincs, de ha a makrós megoldást szeretnéd, szívesen segítek, ha elindultál már valamerre és elakadtál.
A fenti módszertan egyben az algoritmusa is a makrónak.
Imre
Attachments:
You must be logged in to view attached files.Szia!
Gyönyörű feladat! Csak azt kellene eldöntened, hogy 10x meglévőket vagy 5x meglévőket keresel 🙂
Excel függvényekkel egy lépésben nem is valósítható meg.
Egyik lehetőség, hogy makróprogramot kell rá írni.
Másik lehetőség a tömbképletek használata, és még így is több lépésre van szükség
A B2:U2-ben van 20 szám, a W2:AA2-ben 5 szám.
Arra vagyunk kíváncsiak, hogy az 5-ből hány van benne a 20-ban.=SZORZATÖSSZEG(DARABTELI(B2:U2;W2:AA2))
Ezt a 20 számos tartomány minden sorára meg kell nézni, tehát a B2:U2 mozog, a W2:AA2 nem mozog.
Kapsz annyi eredményt, ahány sora van a 20 számos tartománynak, majd egy ellenőrző cellában megnézed, hogy hány olyan van, ami =5.
Ezzel kész vagy az első 5 számos húzás elemzésével.És a fentieket meg kell csinálni az 5 számos tartomány minden sorára.
Segítséget kértél, íme a módszertan.
Imre
Örülünk! 🙂
Szia!
A feladat többféleképpen is megoldható, én most egy HA + ÉS fv megoldást mutatnék.
=HA(ÉS(C1>=0;C1<5%);D1*(1+7%);HA(ÉS(C1>=5%;C1<10%);D1*(1+12%);D1*(1+15%)))
Ez egy háromszoros elágazás. Azt nem írtad, hogy az felsorolt eseteken kívüli esetbe mi történjen, ezért én önhatalmúlag 15%-os növekedést írtam elő.
Balról jobbra haladva:
Ha C1 0 és 5% közé esik (azaz nagyobb vagy egyenlő nulla ÉS kisebb mint 5%), akkor az eredmény legyen a D1 szorozva 1+7%, azaz D1*1,07.
Különben HA 5 és 10% közé esik (a vizsgálat ugyanúgy megy ÉS függvénnyel), akkor D1*1,12
Ha egyik sem, akkor D1*1,15Imre
-
A hozzászólás módosításra került: 2 years, 11 months telt el-
horvimi.
Sziasztok!
Én csak annyit tennék hozzá, hogy ismereteim szerint makró nélküli megoldás nincs erre feladatra.
köszi Delila!Imre
Szia!
Az adatérvényesítéssel elkészített legördülő lista esetén nem adható meg alapértelmezett (default) érték.
Nem lenne rossz, de nincs ilyen lehetőség.
Azt tudod csinálni, hogy előre lehúzod ebben az oszlopban az alap értéket, ha az mindig ugyanaz.A figyelmeztető feliratot meg tudod csinálni:
Adatok-> Érvényesítés -> Beviteli üzenet fül (középső)Amit itt megadsz, azt egy kis buborékban ki fogja írni, ha rákattint a cellára.
Imre
Szia!
Két dolog:
Egyik, hogy új kérdést kélek, új Topic-ben indíts!
Másik, hogy én nem tudom értelmezni a kérdésedet. Próbáld meg egy kicsit átgondolni!Köszi, imre
Szia!
Csak haloványan, de lehet, hogy értem.
Kérdés, hogy egyszerre csak egy szűrőt választhat-e a user?
Pl. egy legördülőből választana alma, narancs, körte közül, és az adattábla szűrődne azokra a sorokra, amik a tag oszlopban tartalmazzák a választott szöveget.Ha egy helyben akarod szűrni, mintha autofilter lenne, akkor ez Excel függvényekel nem megoldható.
Lehetséges megoldás a makró vagy a PowerQuery.Ha a szűrés eredménye lehet egy másik tartományban, és 365-ös Excel-t használsz, akkor szóba jöhet a SZŰRŐ (FILTER) függvény.
Imre
Szia!
Kipróbáltad és nem működött? Én próbáltam most 365-ön és műxik.
A VBA nem függ nyelvi verziótól.
Olyan lehet, hogy egy valami az előzőben még működött, az újabb verzióban meg már nem, de ez nem olyan.Ha nem akarod bedrótozni a sorok számát, akkor ez is jó lehet:
Elso_szurt_sor = Activesheet.AutoFilter.Range.Offset(1).SpecialCells(xlCellTypeVisible).Cells(1).Row
Az aktuális lap szűrt tartományának első látható sorának számát adja vissza.
Az Offset(1) kiveszi a fejlécet a történetbőlImre
Bocs, de nem tudom leköveti, hogy mit akarsz…
Örülünk
Szia!
Mivel 365-ös rendszered van, használhatsz újabb függvényeket és technikákat.
Az első két oszlopban van az a táblázat, aminek a két oszlopbából akarsz dolgozni (Cikk és Zárás)A D1-hez tegyünk egy fejlécet (Cikk és Darab)
D2 = EGYEDI(INDEX(EGYEDI(Táblázat1[[CIKK]:[zárás]]);;1))
1. Ez előbb a táblázat 2 oszlopából kiveszi az ismétlődéseket az EGYEDI függvénynel,
2. majd az INDEX függvénnyel kiveszi az első (Cikk) oszlopot
3. és futtat rajta még egy Ismétlődés eltávolítást
4. Megjelenik egymás alatt a két cikkszámJöhet E2-be az összesítés.
E2 = =SZUM(--(INDEX(EGYEDI(Táblázat1[[CIKK]:[zárás]]);;1)=D2))
1. A belseje ugyanez, tehát előbb kiveszi az eredeti táblából az ismétlődéseket,
2. majd ebből kiveszi az első oszlopot és összehasonlítja a D2-ben lévő cikkszámmal. Egy logikai tömböt kapunk (FALSE;TRUE;FALSE,FALSE….) Ott lesz FALSE, ahol nem egyezik és ott lesz TRUE. ahol igen.
3. Ezt a dupla mínusszal 1-re és nullára alakítjuk (1,0,1,1,0, 0…)
4. Végül ezt összeadjuk. Visszaadja, hogy az első elem, ami a D2-ben van (30C11), hányszor szerepel az ismétlődések nélküli eredeti táblában
5. Lehúzhatod a másik cikkszámra.Gyönyörű nem? 🙂
Imre
Szia!
Alakul a dolog 🙂
Szép megoldások. Majd ha váltasz (mert előbb-utóbb fogsz) újabb Excelre, meglátod, hogy a tömbképletek mennyivel egyszerűbbek lettek.
Gyertya diagramot (sem) lehet csinálni sajnos Pivot tábla alapján. Van még pár ilyen.
Erre azt szoktam csinálni, hogy dinamikus névtartományt húzok a Pivotra, a kezdő celláját (Nálad ez G1) fixnek tételezve.Nálad most az „L” oszlop végét kellene megtalálni, és máris megvan a G1:L_oszlop_vége tartomány.
Ha az L oszlopban nem pontos egyezőséggel keresünk egy jó nagy számot, ami biztosan nagyobb az összes előforduló számnál, akkor a szokásos függvények az utolsót fogják megtalálni, így tesz a HOL.VAN is, visszaadva a 39.sort
HOL.VAN(9999999;L:L;1)
Ha ezt odaadod az INDEX-nek, az megtalálja a 39. sorban lévő értéket.
INDEX($L:$L;HOL.VAN(9999999;$L:$L;1))
És most jön a lényeg, hogy az INDEX fv valójában mindig a megtalált elemre mutató referenciát ad vissza, nem magát az értéket, tehát az L oszlop utolsó sorában lévő érték címét, azaz jelen esetben „L39”-et
Tehát a teljes PIVOT tartománya jelenleg: „G1:L39”, ami természetesen követi a Pivot méretét, ha ebben az oszloptartományban marad különben.Utolsó lépésként csináltam egy ennek megfelelő Nevet a névkezelőben, (Pivot_adat) ami így néz ki:
=Munka1!$G$1:INDEX(Munka1!$L:$L;HOL.VAN(9999999;Munka1!$L:$L;1))
Végül a Chart létrehozása, ami még egy csavar, mert előre ki kellene jelölni az adatokat, hogy Diagramot csinálj, a Pivot alapján meg nem lehet. Szóval én értékként kimásoltam a Pivot táblát, megcsináltam a diagramot, majd módosítottam az adatforrását, hogy a fent létrehozott névre mutasson.
=Munka1!Pivot_adat
A „Munka1” munkalapnév fontos benne, mert a Chart adatforrásként csak akkor fogad el nevet, ha a nevet tartalmazó munkalap is bele van írva. Nem tudom miért, de így van.
Nagyon érdekes, mert valahogy érzékeli, hogy Pivot-ból van, és a szeletelő mindkettőt vezérli.
Utólag pedig valami miatt átvette az előző Chart forrását és nem lehet módosítani a forrását.
Kicsit még nézegetem…Visszacsatolom, és köszönöm ezt a jó kis tanulságos kihívást!
Imre
-
A hozzászólás módosításra került: 3 years, 1 month telt el-
horvimi.
-
A hozzászólás módosításra került: 3 years, 1 month telt el-
horvimi.
Attachments:
You must be logged in to view attached files.Nem tudom mire gondolsz a számítot mező esetén. Ha esetleg FKERES-t akarnál használni, azt nem lehet.
„”references,Names,Arrays are not supported in pivottable formulas”Számított mezővel csak az aktuális Pivot-ban létező mezők felhasználásával lehet új mezőt csinálni.
Pár függvény megengedett (Pl. IF) de csak mezőre hivatkozhatsz, kifelé nem.Excel natív eszközökkel 2016-ban szerintem nem lehet dinamizálni a jobb oldali tábládat.
Makróval igen, illetve PowerQuery-vel is valószínűleg megoldható.Imre
Szia!
Tetszik amit csináltál, de a végső tábla dinamizmusa valóban nem megoldott így. 🙂
Rákérdeznék, hogy milyen Excel verziót használsz?
Ha 365-öt, akkor dinamikus tömbképletekkel és XKERES függvénnyel és egy dinamikus névvel megoldható amit szeretnél.Ha 365-öd van, akkor el tudom küldeni, nagyon tanulságos, a dinamikus tömbök új dimenziókat nyitnak az Excelben.
Imre
Igen, jogos!
Pontos egyezés = első előfordulás, közelítő egyezés = utolsó előfordulás rendezettség esetén. 🙂Már csak az a kérdés, hogy @MrJosa adatkészlete így néz-e ki, vagy ilyenné tehető vagy sem.
Szia!
Nem foglalkoztam még a témával, de azért írok pár dolgot.
Feltételezem, hogy te is valamilyen árfolyam napi alakulásának ábrázolásához szeretnéd használni.
A gyertya diagramhoz speciálisan előkészített forrás tábla kell, ami 5 oszlopos.
Első oszlop egy dátum, és utána sorban, hogy azon a napon hogyan viselkedett az árfolyam:
nyitó, legmagasabb, legalacsonyabb, záróEnnek előállításához szükség van egy olyan forrás táblára, ami a napon belül x időnként tartalmazza az aktuális árfolyamot.
Erre elvileg egy 2 oszlopos tábla elég, és a napon belül nem tudom mennyi mintavétel. Ha óránként nézzük, akkor a tőzsde nyitás és zárás között óránként egy érték.Például ilyesmi 2 napra
Dátum Idő árfolyam ---------------------------------- 2022.02.15 8:00 96 2022.02.15 9:00 83 2022.02.15 10:00 105 2022.02.15 11:00 115 2022.02.15 12:00 129 2022.02.15 13:00 116 2022.02.15 14:00 98 2022.02.15 15:00 77 2022.02.15 16:00 105 2022.02.16 8:00 79 2022.02.16 9:00 107 2022.02.16 10:00 105 2022.02.16 11:00 77 2022.02.16 12:00 75 2022.02.16 13:00 98 2022.02.16 14:00 86 2022.02.16 15:00 92 2022.02.16 16:00 121 stb...
És akkor ebből kell előállítani ezt
Nap nyit max Min Zár --------------------------------------------- 2022.02.15 96 129 77 105 2022.02.16 79 121 75 121
A napi MAX és MIN értékek egyszerűek, simán MAXHA és MINHA függvényekkel megcsinálhatók.
A nyitó és a záró már trükkösebb, bár ha naponta mindig ugyanakkor nyit és ugyanakkor zár az adat, akkor ez is sima ügy, két feltételes MAXHA és MINHADe fogalmazhatok úgy is pl. az első napnál, hogy keresse meg február 15-én a legkisebb időpontot, és adja vissza hozzá az árfolyamot abból a sorból. Ez már egy nagyobb kihívás. INDEX/MATCH és tömbképlet kell hozzá.
=INDEX($D$3:$D$20;MATCH(1;($B$3:$B$20=G3)*($C$3:$C$20=MIN($C$3:$C$20));0))
D oszlopban vannak az árfolyamok, B oszlopban vannak a napok, C oszlopban vannak az órák.
G3-ban van az alsó táblából a 2022.02.15
A fenti képlet a feb 15-i nyitó árfolyamot adja, azaz a 96-ot.Remélem ez segít.
Imre
Csak azért, mert az elején írtad, hogy valami egyszerűbb is érdekelne, megkérdezem, hogy ez a képlet nem ugyanazt hozza-e ki véletlenül, mint a tiéd?
=INT((C7-C5)*24)
Imre
-
A hozzászólás módosításra került: 3 years, 2 months telt el-
horvimi.
Szia!
Jól elvagy itt magadban 🙂
Köszi a kérdést és a megoldást is 🙂A feladatot nem írtad le …
Én most akkor ebbe nem vonom bele magam, de azért rákérdeznék, hogy a SUM minek oda?
Ha jól látom, akkor órákban akarsz eredményt kapni két miből is?A C5 és C7-ben Dátum-idő értékek vannak, azaz tört számok, és a kettő különbsége kellene órában?
Mi lesz, ha a nagyobbikból kivonod a kisebbiket (zárójelben) és azt felszorzod 24-el?Imre
Köszönöm az új topic-ot.
Szóval ahogy mondtam, nincs gyakorlatom XML feldolgozással.Ha rákattintasz egy ilyen „Table” elemre, akkor alul mit látsz? Több elemű táblát?
Minta XML nélkül biztosan nem tudom…
Ha több eleműek a kis táblák, akkor gondolom ismételni akarnád a sorokatVannak nyomai a helyzetnek a fórumokban…
Pl.:
https://community.powerbi.com/t5/Desktop/XML-Query-Column-which-contains-both-quot-Table-quot-and-quot/td-p/253423Ugyan ez az első elemet veszi ki, de hátha segít…
Imre
2022-02-08-10:01 Hozzászólás: [Resolved] Excel egy cellában lévő adatok felsorolása egy adott módon #8911Örülünk 🙂
2022-02-08-00:23 Hozzászólás: [Resolved] Excel egy cellában lévő adatok felsorolása egy adott módon #8909Szia!
Ezt PowerQuery-vel kb 1 perc alatt lehet megcsinálni.
Oszlop felbontása sorokra.Elmagyarázni sokkal nagyobb kihívás 🙂
Elsőként tegyük fel, hogy tudsz valamennyire angolul. Kerestem neked egy videót:
https://www.youtube.com/watch?v=eC_GSMBZWPEImre
2022-01-30-22:05 Hozzászólás: [Resolved] kereséskor több ugyanazon találat esetén eredmény ismétlése #8900Örülünk. 🙂
Formulákkal ezt én nem tudom megcsinálni, és Gsheet-ben az Exceles tudásommal csak a formulákon keresztül van átjárásom.
Scriptelni biztosan lehetne, ahogy makróval is simán megoldható lenne, de csak az utóbbihoz értekEgy Copy/Paste-et kibírsz 🙂
Imre
2022-01-30-11:33 Hozzászólás: [Resolved] kereséskor több ugyanazon találat esetén eredmény ismétlése #8895Csatolom a megoldás fájlt.
Az első lapon van az adatbázis, ami táblázattá van alakítva. A táblázat neme: „Táblázat1”
Ezt kell mindig kicserélni az aktuális adatbázisra. A „Tábláuat1” név ne változzon és a mérete az aktuális adatbázis mérete legyen. Ez elvileg automatikusan megtörténik, ha okosan cseréled az adatokat:
1. A fejlécen kívül minden sort kijelölsz
2. Jobb klikk -> Törlés -y Táblázat sorok
3. Az aktuális adatbázist fejléc nélkül Copy/Paste-el a helyére teszed.Ha esetleg nem tudnád mi a táblázat, akkor ezt olvasd el. Nem mai, de még mindig érvényes
Ha kicserélted, akkor az „alternatív megoldás” lapon lévő eredmény tábla bármely celláján jobb klikk-> Frissítés
A többit a háttérben futó PowerQuery lekérdezés megcsinálja.Jelezz vissza, hogy rendben van-e!
Imre
Attachments:
You must be logged in to view attached files.2022-01-30-00:28 Hozzászólás: [Resolved] kereséskor több ugyanazon találat esetén eredmény ismétlése #8888Szia!
Nem egy egyszerű feladat ez.
Gondolom ez csak minta adat, és automatizálni szeretnéd az átalakítást.
Ebből a kiinduásból még makróval sem olyan egyszerű megcsinálni.Ha jól gondolom, akkor ez valamilyen nyilvántaró rendszer kimenete, ami már valamiféle összesítés, és ebből kellene egy másikfajta összesítést csinálni.
Külön kihívás az egy cellában két név téma.PowerQuery-vel sikerült csinálnom valami hasonlót, de el van forgatva 90 fokkal.
Így néz ki:Név Tanítási nap Lilli 2022. 01. 24. Lilli 2022. 01. 24. Lilli 2022. 01. 17. Lilli 2022. 01. 17. Domi 2022. 01. 24. Domi 2022. 01. 24. Domi 2022. 01. 19. Domi 2022. 01. 19. Ádám 2022. 01. 25. Ádám 2022. 01. 25. Ádám 2022. 01. 25. Ádám 2022. 01. 27. Emese 2022. 01. 25. Emese 2022. 01. 27. Lara 2022. 01. 17. Lara 2022. 01. 17. Csabi 2022. 01. 17. Csabi 2022. 01. 17. Csabi 2022. 01. 19. Csabi 2022. 01. 19. Ambrus 2022. 01. 19. Ambrus 2022. 01. 19.
Ez maradhat így, vagy lehet még belőle eyg kicsit áttekinthetőbb PIVOT táblát csinálni, ahol a nevek nem ismétlődnek, csak az első előfordulásnál jelenek meg.
Ha ez is megfelel, akkor van megoldás, de elmagyarázni nem biztos, hogy tudom…Imre
Ha jól értem, akkor 10-et kell hozzáadni, ha az utolsó előtti karaktere 9-es VAGY az utolsó két karaktere 99.
Ezt így (is) le lehet írni:HA(VAGY(KÖZÉP(E1;9;1)=""9;JOBB(E1;2)="99");E1+10)
Ezt kellene befűznöd a már működő fenti kifejezésbe.
Imre
-
A hozzászólás módosításra került: 3 years, 2 months telt el-
horvimi.
Szia!
A fájloknak a neve nem elég információ, azt is tudni kell, hogy hol vannak a gépeden, teljes útvonallal
Van az Excelnek egy HIPERHIVATKOZÁS() függvénye, aminek ha megadod az útvonalat, akkor linket csinál belőle.Pl.: Az A1-ben van az, hogy „C:\users\Bambi\Documents\kepek\xxx.jpg
B1-be lehet írni a függvényt, hogy =HIPERHIVATKOZÁS(A1)Imre
Rendben, Hajrá!
Le tudtam követni amit csinálsz. Jó bonyolult, ennél jóval egyszerűbben is meg lehet csinálni a 8-as munkalapig.
Teszek egy utolsó kísérletet:
1. Az eredeti tábla végére egy új oszlop, ahol rendszámonként (soronként) megnézed, hogy hány nullától eltérő érték van a „Hiányzó” oszlopban.=DARABHATÖBB([Rendszám];[@Rendszám];[Hiányzó];"<>0")
Ez az 5. lapig megoldja a folyamatot az eredeti táblában. Ez után rászűrhetsz a nullákra és másolhatod tovább egy új munkalapra ha akarod, mert szerintem ez a lépés akár az utolsó is lehet, így képezve a végeredményt.
2. A kimásolt tábla végére jöhet az a képlet, ami cikkszámonként megadja az össz rendelt mennyiséget
=SZUMHA([Cikkszám];[@Cikkszám];[Mennyiség])
3. A végére jöhet a „Státusz” oszlop képlete, ahogy csináltad, hogy megállapítsd, hol van BACKORDER
4. Végül a huszárvágás, amit nem sikerült megoldanod:
Egy újabb oszlopba fűzd össze a cikkszámot a megrendelésszám2-vel, és ez alapján rendezd a táblát.=[@Cikkszám]&"-"&[@Megrendelésszám2]
Az azonos cikkszámok így a kötőjel mögött lévő sorszám szerint lesznek sorbarakva.
A zöld táblával nem foglalkoztam.
Imre
Sziasztok!
Péter! Több önbizalmat! 🙂
A kérdezőnek mondanám, hogy eddig bármit kérdeztél, egyszer sem köszöntél és egyszer sem reagáltál a válaszokra. Egy fórumnál az első mondjuk személyiség kérdése, de a második annyira alap, hogy egy ingyenes fórum közösségi dolog, egymástól tanulunk és visszajelzünk.
Gondolom több helyre is feltetted a kérdéseidet, és az is lehet, hogy közben megoldódtak máshogy, de ha nem sértődsz meg ezeken a szavakon annyira, hogy soha nem térsz vissza, akkor kérlek, adj visszajelzést!
Péter, A képlet teljesen jó szerintem, magam sem tudnék jobbat.
Amivel kiegészíteném:
– HAELSŐIGAZ fv angol neve: IFS. A többszörösen egymásba ágyazott HA függvényeknek egy új alternatívája,
a 2019-es Excelben van először benne.
– Ha ezek eredetileg számok, akkor szerintem működik ÉRTÉK és SZÖVEG függvény nélkül is. (Kipróbáltam)=HAELSŐIGAZ(JOBB(B2;1)="9";B2+1;KÖZÉP(B2;9;1)="9";B2+10;IGAZ;B2+11)
Klasszikus HA függvénnyel pedig így néz ki:
=HA(JOBB(E2;1)="9";E2+1;HA(KÖZÉP(E2;9;1)="9";E2+10;E2+11))
Ez amiatt van, mert az Excel automatikusan konvertál, azaz ha számhoz hozzányúlsz szöveg függvénnyel, akkor előbb szöveggé alakítja, majd elvégzi a műveletet, és ha az eredmény szám, akkor azt megint számmá alakítva írja a cellába eredményként.
Nem annyira korrekt, de így működik.
Imre
Az a problémám, hogy teljesen bele vagy csavarodva a saját gondolatmenetedbe, és így külsősként én továbbra sem értem, hogy mit szeretnél. Megjelent most ‘0’ szűrő, egy ‘Rendszám’ és egy ‘Megrendelésszám’ oszlop, egy státusz oszlop, és végeredményként mást fogalmaztál meg elsőre és másodikra.
Ilyenkor én azt szoktam javasolni, hogy ha különben létezik valamilyen manuális munkafolyamat, amit csinálni szoktál, azt írd le lépésenként.
Gondolok valamit, megpróbálom megfogalmazni az újabb forrástábla oszlopai alapján.
1. A cikkszámokhoz tartoznak aktuális raktárkészletek. Ha egy cikkszám ismétlődik (másik Rendszám), akkor ahhoz ugyanaz a raktárkészlet tartozik.
2. A cikkszámokhoz tartoznak rendelt mennyiségek. Egy cikket más Rendszámon többször is rendelhetnek.
3. Van egy Státusz oszlop, ami ‘Megérkezett’ vagy ‘Backorder’
Innentől már fikció
4. Egy új oszlopba soronként SZUMHA függvénnyel kiszámolod az aktuális cikkszámhoz tartozó össz megrendelés darabszámát
5. Még egy új oszlopba kiszámolod a raktárkészlet és az előbb kiszámolt össz megrendelés különbségét.
Az azonos cikkszámokhoz ugyanaz az azonos különbség lesz. Ha ez negatív, akkor ugye gond lehet, mert akkor többet
rendeltek, mint amennyi van.
6. Rászűrsz azokra a sorokra, ahol az előző negatív
7. A kapott rekordokat kimásolod egy új lapra
8. A nem szükséges oszlopokat akár lehetne törölni (opcionális)
9. Rendezed elsődlegesen cikkszám, másodlagosan Rendszám szerint. Így az azonos cikkszámokhoz mondjuk növekvő sorban ott lesznek a rendszámok is
Innentől már csak tapogatódzok
10. Lehetne szűrni ‘BackOrder’-re? meg nullákra a ‘Hiányzó’ oszlopban?Szóval valami ilyesmi manuális folyamatleírásra gondoltam.
A fentieket meg lehet csinálni Office365 függvényekkel is (FILTER, SORT,…), csak előbb érteni kellene a folyamatotImre
Szia!
Az elejét értem, a végét nem. De azt szerintem csak te érted. 🙂
Először is azt jelezném, hogy a tábla, amit küldtél, tartalmaz egy olyan redundanciát, amit nem szabadna neki:
Ha összefűzöm az első két oszlopot egy új oszlopba, akor abban már nem szabadna ismétlődésnek lennie, de van.
Ezek a sorok teljesen megegyeznek minden oszlopban. Véleményem szerint ez hiba.kulcs ------------------ RRH231-JDE392170 RRH231-JDE392170 RRM514-T4N98120 RRM514-T4N98120
Na de nézzük a feladatot.
Ha jól értem, akkor egy cikkszám minden előfordulásához ugyanaz a raktári készlet tartozik, mert ugye a cikkszám is egy egyedi azonosító. Ez eddig rendben van.
Értelmezésem szerint az egyik probléma az lenne, hogy ha ugyanarra a cikkszámra több igény is érkezik és ezek összeg nagyobb, mint a cikkszámhoz tartozó raktárkészlet, akkor hiány keletkezik.
Ez a probléma úgy mutatható ki, hogy cikkszámonként összegezni kell az igény mennyiségeket és össze kell hasonlítani a cikkszámokhoz tartozó raktárkészlet átlagával. Ha egy cikkszám pl. 5-ször fordul elő, akkor a raktárkészelet érték mindenhol mondjuk 15 lesz, ennek átlaga is 15.
A két érték egy PIVOT táblával megcsinálható, de a kettő különbsége már a PIVOT-on kívüli számítással oldható meg, vagy Power Pivot mértékkel, de ezt hagyjuk.Ha a raktárkészlet és az igények különbségét soronként akarod látni, akkor soronként SZUMHA-ÁTLAGHA képlet kell egy új oszlopba.
Az utolsó bekezdés, ami a „A cél az lenne…”, számomra nem értelmezhető.
Imre
Szia!
Hát, ahogy a csatolt képet elnézem, ez nem Excel, hanem Google Sheets.
És nem az F oszlop van elrejtve, hanem az EÚgy tudod visszahozni, hogy ha kijelölöd a D és F oszlopokat (végighúzod az egeret lenyomott gombbal), majd jobb klikk az egyiken (mondjuk a D betűn) és ot lesz, hogy oszlop felfedése.
Imre
Na, mire ideértem, megoldódott.
Éljenek a tömbképletek! 🙂Szia!
A kérdés nem triviális, mert hivatalosan ne nagyon van dokumentálva, de megerősítem a tapasztalatodat.
Én is jártam kb. egy éve úgy, hogy táblázattá alakított tartományokat kezeltem ciklusban, és fájdalmasan lassú volt.Miután szénné debuggoltam és az algoritmusban nem találtam hibát, már csak arra tudtam gondolni, hogy ez lehet a baj.
Átírtam a programot úgy, hogy sima tartományként kezelje (értsd: nem is volt táblázattá alakítva) és nagyon sokszorosára gyorsult. Ezután konzultáltam más VBA-s ismerőseimmel és ők is ezt tapasztalták
Imre
Szia!
A képernyőképen, amit küldtél az olvasható, hogy zárolva van szerkesztésre. Ez nem lapvédelem probléma szerintem, hanem megosztási probléma.
Én most tettem egy kísérletet:
1. Egy új munkafüzetet nyitottam a desktop Excelben
2. Egy munkalapon kijelöltem minden cellát (bal felső sarok)
3. Jobb klikk -> Cellaformázás… -> Védelem fül -> Zárolás kikapcsolása
4. A védeni kívánt oszlop, illetve cellák, tartomány, stb… kijelölése
5. Zárolás bekapcsolása a 3 lépés szerint
6. Lapvédelem bekapcsolása
7. Mentés Onedrive-ra
8. Megosztás -> Itt megadtam egy másik felhasználót a cégtől
9. Beléptem böngészőből a OneDrive-ra a magam nevében
10. Megnyitottam a feltöltött fájlt az Online Excellel
11. A védett cellákban nem tudok szerkeszteni, a nem védettekben tudok12. Egy másik böngészőben beléptem a munkatárs nevében
13. A megosztott fájlok között ott volt az imént feltöltött munkafüzet, megnyitottam online Excelben
14. Ugyanúgy helyesen működött neki is.Tehát a próba nálam sikeres volt.
Persze olyat is lehet, hogy rögtön egy megosztott mappába teszed fel a munkafüzetet, de nem tudom pontosan, hogy akkor örökli-e a mappa jogosultságait vagy sem.
Még nem túl sokat kísérleteztem ezzel.Az online Excelben magát a lapvédelmet nem lehet levenni és beállítani sem, de az asztaliban tett beállításokat (legalább is nálam) helyesen kezelte.
Remélem tudtam segíteni valamit.
Kérlek, hogy írd meg mi lett, hogy mindenki okulhasson a dologból.
Köszönöm,
Imre
Örülünk!
Szia!
A probléma az, hogy a 3-ast tartalmazó cellák végén a 3-as után van egy speciális, 10-es kódú karakter.
Ez egy vezérlő karakter, ami sortörést idéz elő a cellában.
Ha a szerkesztőlécen a hármas mögé kattintasz, és nyomsz egy lefelé nyilat, akkor egy üres sort fogsz látni a 3-as alatt.
Néha előfordulnak ilyen, és ehhez hasonló érdekességek, főleg netről lehozott C/P adatokban.Hogy miért gondoltam erre? mert már „öreg” vagyok 🙂
Én különben nem is így csináltam, hanem a CODE/KÓD függvénnyel megnéztem, hogy mi az utolsó karakter kódja. Az jött ki, hogy 10. Bocs, most épp angolon áll az Excelem…
=CODE(RIGHT(H3))
A 3-as kódja viszont az 51 kellene, hogy legyen
=CODE("3")
Na, miután megvan a diagnózis, jöhet a gyógyítás.
Képlettel
Van egy CLEAN / TISZTÍT nevű függvény, ami kitakarítja a 32-esnél kisebb kódú vezérlőkaraktereket a megadott cellából. A kapott eredmény még szöveges lesz, de a VALUE / ÉRTÉK függvénnyel számmá lehet alakítani.=VALUE(CLEAN(G2))
Ezt aztán lehúzva meg jobbra megkapod az eredeti tartomány javított változatát, amit visszarakhatsz a fenti tartományba értékként.
Csere és szorzás
1. Kijelölöd az átalakítandó oszlopokat
2. Ctrl-H Csere)
3. Amit keres: Jobb oldali ALT+010 a billentyűzeten. Ez beviszi a 10-es kódú karaktert
4. Cserélje a semmire (ezzel mindenhonnan kimegy a 10-es kódú cucc.
5. Meg kell mindent szorozni 1-el, hogy a szöveges számok igazi számok legyenek
5.1 Egy üres cellába beírsz egy 1-est, majd ezen a cellán Ctrl+C
5.2 Kijelölöd az átalakítandó oszlopokat -> Bármelyiken jobb klikk -> Speciális beillesztés -> SzorzásVOILA !
Jelezz vissza itt, hogy sikerült-e!
Boldog karácsonyt!
Imre
Tölts fel egy mintát egy rövid leírással, hogy mit szeretnél elérni, mely cellákban, hogy lássuk mivel küzdesz.
Imre
Szia!
FKERES /VLOOKUP-ot próbáltad már?
Imre
Tényleg, igazad van, sőt!!!
A 2019-es Exceltől felfelé van MAXHA / MAXIFS függvény, ami mindenféle varázslat nélkül megcsinálja ugyanezt.I
Szia!
Még jó, hogy megnéztem a fájlt, és látom, hogy két oszlopban van a kód és a dátum.
A „hozza nekem” egy kis bizonytalanságot rejt nekem, ezért megkérdezem, hogy ezen mit értesz?
FKERES/VLOOKUP esetre gondolsz, vagy másképp kell neked az eredmény?Leírok pár lehetőséget:
1. Rendezed csökkenőbe dátum szerint, majd csinálsz egy ismétlődések eltávolítását a kód oszlop alapján.
Ezzel csak az első előfordulások, azaz a legutóbbi dátumokhoz tartozó sorok maradnak meg. Ez egyfajta szűrés.2. Ha képlettel szeretnéd, akkor a válasz nagy mértékben függ attól, hogy ez egy FKERES helyzet vagy sem, illetve még fontosabb, hogy melyik Excel verziót használod.
Ha esetleg Office 365 van, akkor nagyon örülünk, mert az XKERES függvény tud alulról felfelé is keresni. Ehhez persze meg az kell, hogy az eredeti tábládban dátum szerint növekvő rendezettség legyen.
Ha korábbi Exceled van (2010, 2013, 2016, 2019), akkor nem lesz XKERES/XLOOKUP függvényed.
Ebben az esetben pedig olvasd el ezt a korábbi cikkemet, ahol szerintem pont az van, amit keresel
https://excel-bazis.hu/tutorial/utolso-elofordulas-kereseseImre
Írd be a Function sor után, az első Dim elé, hogy
Application.Volatile
Ezzel azt kéred, hogy váljék volatil függvénnyé, és bárhol bármi megváltozik, kalkuláljon újra.
Imre
Persze!
Tök rendben van, köszi!
Én is szoktam mindig tanítani haladó tanfolyamokon.Imi
Szia Delila!
A feladat gördülő összegzés készítése valami olyan képlettel, ami automatikusan az előte lévők adott tartományát összegzi.
A te képleted statikus, tehát minden oldalon kézzel módosítani kellene.A feladat nem oldható meg (szerintem) Excel natív képlettel.
Elvileg LAP() és INDIREKT() működne, de kiderült, hogy az INDOREKT nem kezeli a 3D hivatkozásokat.
Azóta utánajártam és valóban nem.Imre
Szia!
Erre nincsen képletes megoldás.
Makróval, felhasználói függvényt (UDF) lehet írni rá.
Csináltan egy gördülő összegző függvényt, amit egy kicsit módosítva a saját problémádat is megoldhatja.
Cserébe viszont makrós lesz a fájl.Szóval a szóban forgó fájlba a makró szerkesztővel beszúrsz egy új modult, majd abba bemásolod ezt:
Function RunningTotalSheets(source As Range) As Double Dim sourceAddress As String Dim i As Integer Dim result As Double sourceAddress = source.Address result = 0 For i = 1 To ActiveSheet.Index result = result + WorksheetFunction.Sum(Worksheets(i).Range(sourceAddress)) Next i RunningTotalSheets = result End Function
Azt teszi, hogy a paraméterben kapott tartományt kummulatíve összesíti az elsőtől az aktuális lapig.
Próba:
1. Átmész Excelbe, megcsinálod an N darab lapot az „A” oszlopban az adatokkal.
2. Az első lapon egy üres cellába elkezded írni, hogy „=Runni…”, látod majd, hogy felajánlja az UDF nevét, TAB-al elfogadod, és az egy db paraméterbe bekattintod az egész „A” oszlopot
3. Átmész a 2. lapra és megcsinálod ugyanezt, vagy átmásolod az előző lapról a függvényes cellát. Itt már az első két lap összesenje jön az „A” oszlopokból, stb…Ha az eredeti problémára szeretnél fókuszálni, és az elsőtől az aktuális-1-ig szeretnél Max értékeket összeadni, akkor:
1. A For ciklust Activesheet.Index-1-ig kell futtatni
2. Az összegző sorban a Sum-ot Max-ra változtatodVigyázz, hogy először csak a 2. lapon adható ki, nem tettem bele hibakezelést.
Remélem sikerül,
Imre
Szia!
A VBA editor natívan ezt nem tudja.
Csak az eszköztáron felül, a végén, a kérdőjel után mutatja, hogy a kurzorod melyik sorban van.Léteznek add-in-ok vagy bonyolult makró kódok erre a célra.
https://www.automateexcel.com/vba-line-numbers/
https://stackoverflow.com/questions/40731182/excel-vba-how-to-turn-on-line-numbers-in-code-editorVagy kimásolod egy notepad++-ba pl.
Imre
Szia!
A SendKeys-el szoktak lenni problémák, ahogy az egész VBA csinál érdekes dolgokat néha 🙂
Nem hallottam még konkrétan erről, de gondolom gugliztál már a témában, én nem ezzel kezdeném….A kérdésem az, hogy az
Application.Quit
miért nem jó neked?Imre
Sziasztok!
Igen, ezt kb. így szokták csinálni, ahogy Delila írta.
Én egy kicsit rövidebb formát preferálok:=HA(SZÁM(SZÖVEG.KERES("mit_keres";miben_keresi));"Megvan";"Nincs meg")
A SZÖVEG.KERES fv visszaadja, hogy hányadik karakternél kezdődik a keresett szöveg (ami egy szám), vagy hibát ad.
Imre
Az attól függ, hogy most tudsz-e makrózni.
Ha még soha, akkor elég sok mindent kell megtanulni és megérteni ahhoz, hogy meg tudd csinálni.Ráadásul ott van még az a probléma is, hogy ha bonyolult céget kell feldolgozni, és a makró elkészítette a dupla munkalapot és a felképletezést, akkor mi lesz a továbbiakban, amikor ugyanazt a fájlt egy egyszerű cég feldolgozásához használják?
Mert gondolom, hogy a bonyolult cég esetén a két területi munkalap képletei eltérnek az egyszerű cég képleteitől.Emiatt lehet, hogy az lenne a jó, ha az eredeti, egyszerű cégekhez tartozó felképletezett munkalap marad érintetlen, és a szétbontást két új munkalapra kell megcsinálni dinamikusan makróval. Továbbra is kérdés, hogy mi legyen ezzel a két munkalappal, miután a felhasználó megnézte, kimásolta, bármit tett az eredményekkel?
Lehet manuálisan törölni, vagy valami eseményre (pl nyomógomb) makróval törölni. (Mert ugye nem szeretnéd megtartani.)Imre
Szia!
Nagyon jól sejted, ez programozós megoldás lesz.
Pláne, ha előfordulhat, hogy a jövőben további ilyen cégek is lesznek.Kb ilyesmi:
Ha megváltozik a cégválasztós cella tartalma, akkor induljon egy makró, ami megnézi egy külön, erre a célra készített táblában, hogy egyszerű vagy bonyolult cégről van-e szó.
Ha egyszerű, akkor mondjuk nem kell csinálni semmit, mert azt már összeraktad.
Ha bonyolult, akkor viszont ezt a szétválasztást kell megcsinálni.De ha egy kicsit tovább gondolom, akkor az a kérdésem, hogy ezidáig hogyan működött.
Ha jól értem, akkor képletekkel.
És a szétválasztást is meg tudtad csinálni képletekkel a másik Excelben.Mi lenne, ha csinálnál egy táblázatot, ahol a cégnevek mellett lenne jelölve, hogy egyszerű vagy bonyolult
egy rejtett vagy nem rejtett cellába egy FKERES-el kikeresnéd, hogy 0 vagy 1.
És a képletekbe beírnál egy IF-et, és ez alapján működne.
A másik földrajzi terület képletei üres eredményt hoznak, ha egyszerű, és kitöltött eredményt, ha bonyolult cég lett kiválasztva.
Tehát benne tartanád az eredeti fájlban ezt a másik lapot is.Csak egy gondolat, hogy ne kelljen makró.
Imre
P.s: Mi van, ha bejön egy harmadik földrajzi terület? Harmadik lap? 🙂
Ha a nyilacskákat eltünteted, akkor a szűrés is törlődik, és minden sor látszani fog.
Ha ez az igény, akkor mondjuk az A1-et kijelölöd és utána Ctrl+Shift+L kombináció, vagy Adatok szalagon megkeresed a szűrés törlése gombot, ami egy tölcsér és egy piros X mellette.A probléma még az a fájllal, hogy a fejléce csak a K oszlopig van kitöltve, ezért ha megint szűrni akarsz, akkor a nyilacskák bekapcsolásával (Nagy tölcsér vagy Ctrl-Shift-L) nem a fejlécbe, hanem az első sorba teszi a nyilacskákat.
Emiatt van az, hogy előbb ki kell jelölni az első sort, és utána bekapcsolni a szűrő gombokat, ami miatt egy csomó üres cella is tartalmazni fogja a nyilakat.
Ki kellene tölteni a többi fejlécet…Ennél többet nem tudok javasolni.
Imre
Továbbra sem értem, hogy mi a kérdésed.
A fenti táblázat szűrve van a „Q” oszlopban „Drávucz Ervin Ferdinánd” névre.
Ha kikapcsolom a szűrőket, akkor visszajön az összes sor, 61-ben lesz vége.A fejlécben lévő nyilacskákat szeretnéd eltüntetni?
Nem tudom már mit kérdezzek…
Szia!
Egy kicsit kifejthetnéd, hogy miről van szó, mielőtt azt gondolnám, hogy a bekapcsolt autoszűrések közöl párat ki akarsz kapcsolni.
Vagy épp ezt szeretnéd, csak nem akarod végig kattintgatni, hanem mondjuk egy lista alapján?Csak találgatok…
Imre
Szia!
Többféle megoldás is lehetséges, de a felesleges munkát és időt elkerülendő, előbb pontosítsuk a dolgokat, ha már nem töltöttél fel minta adatokat.
– A Munka2-re ugyanazokba az oszlopokba akarod másolni az adatokat, ahová a Munka1-en beírtad?
– A Munka2-n lévő gyűjtő tartomány az első sorban kezdődik? Van fejléce?Meg lehet csinálni úgy, hogy minden begépelt cella azonnal átkerül a gyűjtő lap első szabad sorába, ugyanabba az oszlopba, de én inkább azt javasolnám, hogy miután beírtál egy sornyi adatot a Munka1-re, egy gomb vagy bill. kombinációra tegye át a Munka2 első szabad sorába.
Imre
Szuper!
Bár nem derül ki, hogy melyiket próbáltad ki, de azért örülünk! 🙂
Szia!
Igen, a PowerQuery átalakításai között van ilyen, csak ki kell választani, és az aktuálisan kijelölt oszlopra csinálja meg.
És ha megnézed a hozzá tartozó M parancsot, akkor még „each” is lesz benne. 🙂A lekérdezések és kapcsolatok különben elvileg a Lekérdezések listáját (is) mutatja, szóval lehet, hogy használod, csak nem tudod hogy azt? 🙂
Imre
Szia!
Bocsánat, ma vettem észre ezt a kérdést, valahogy elsiklottam felette.
Hát, a PQ hibakezelése létezik ugyan, de nem egyszerű, nem lehet olyan könnyen debug-olni, mint egy hagyományos nyelvet.Én a következőt próbálnám:
A mappából történő lekérdezés során van egy opció, hogy hibás fájlok kihagyása. Ha ezt bejelölöd, akkor elvileg csak azok lesznek a végeredményben, ahol nem volt hiba, és nem áll meg futás közben.
A betöltés elvileg tartalmazza egy külön oszlopban, hogy mely fájlokból jöttek az egyes darabok. Innen hiányozni fog az az egy vagy több, ami hibás volt. (Ezt még nem próbáltam, csak hangosan gondolkodom.)
Ha csinálsz még egy mappából történő lekérdezést, akkor annak az elején megadja a mappa teljes tartalmát, ahol ott lesz az összes fájl. Ezt a lekérdezést és az előzőt a fájlnevek oszlop alapján egy különbség képzéssel össze tudod hasonlítani, és megkapod a hiányzó fájlt vagy fájlokat.
Nem írtam le mindent lépésenként, feltételezve, hogy ismered a PowerQuery-t..
Remélem ez megoldás lehet.Imre
Szia!
Én igazából kérdeznék.
Mi okoz neked nehézséget a megoldásban?A függvény nevét ismered, gondolom egy új oszlopban alkalmazni is tudod, majd visszateszed értékként
Azt gyanítom, hogy nem csak ennyit szeretnél.
Ha ez a feladat túl gyakran merül fel, akkor Delila megoldása tökéletes, ha maga az adatfájl tartalmazhat makrókat, és meg is tudod oldani a használatot.A feladat makró nélkül automatizálható PowerQuery-vel is, az megint egy másik dolog
Szóval mi is a kérdésed pontosabban?
Imre
-
A hozzászólás módosításra került: 3 years, 6 months telt el-
horvimi. Indok: spelling
Szia!
Ez eseménykezelő makró nélkül nem oldható meg.
Imre
2021-08-07-20:06 Hozzászólás: [Resolved] Private Sub Worksheet_Activate makró futtatása egy másik munkalapról #8719Bocsánat, hogy ezt írom, de anélkül nem lehet internetről sem tanulni, amíg az alapokkal valahogy tisztába nem kerülsz.
A kód, amit leírtam, a Munka1 és Munka2 munkalapokkal dolgozik, és kipróbáltam mielőtt elküldtem
Valószínűleg nálad nem ezek a lapok nevei, ekkor ad ilyen hibát.
Bele van írva fixen, idézőjelekbe foglalva a munkalap neve, és az address után az is látszik, hogy a Munka1-en a B3 cella értékét figyeli, és ha az változik, csak akkor hívja meg a másik munkalapot módosító valami rutint. Tehát oda kell tenni a legördülő listát.imre
2021-08-06-19:33 Hozzászólás: [Resolved] Private Sub Worksheet_Activate makró futtatása egy másik munkalapról #8716Eseménykezelő
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If Sh.Name = "Munka1" And Target.Address = "$B$3" Then Call valami End If End Sub
Modulban, hogy mit kel csinálni
Sub valami() Sheets("Munka2").Range("A2").Value = "hello" End Sub
Hát egyedül nem könnyű.
Ajánlom figyelmedbehttps://videotanfolyam.pentaschool.hu/courses/excel-automatizalas-makrok-alapjai
Imre
-
A hozzászólás módosításra került: 3 years, 8 months telt el-
horvimi.
2021-08-06-11:32 Hozzászólás: [Resolved] Private Sub Worksheet_Activate makró futtatása egy másik munkalapról #8714Ebben az esetben munkafüzet eseménykezelést kell használnod.
1. Projekt ablakban dupla klikk a „ThisWorbook” objektumon
2. Jobb oldalon felül bal oldalt General helyett Workbook
3. Jobb oldalon felül jobb oldalt lesznek a Workbook események.Neked a SheetChange esemény kell. Paraméterben megkapod, hogy melyik lapon (Sh) melyik cella (Target) változott.
Ha az 1-es lapon tehát változik a lista értéke, akkor a futtathatsz bármit, ami a másik lapon csinál valamit. Ilyenkor célszerű a SELECT-eket kerülni, de az sem baj persze.
Imre
Szia!
Rögtön tisztáznék néhány kérdést:
– mit jelent, hogy többen használjátok!
Konkurensek egyszerre többen?
– Hol vannak a fájlok? Helyi hálózat szerver vagy esetleg felhő?
– Mi a gond a manuális sorszamadassal?
– Mit értesz utánkövetésen?Ez hasonló modell, mint a megrendelés vagy a számla.
Van egy külön tábla a megrendelések főbb adatainak, és a megrendelés azonosítója alapján egy másik táblaban vannak a megrendelés részletei.
Ez az ajánlat modell is hasonló.
Best practice az, hogy elsőként az ajánlat főbb adatait tartalmazó rekord születik meg, ami tartalmaz egy egyedi kulcs oszlopot pl. Sorszám)
Ennek a.sorszamnak az ismeretében lehet elkezdeni a megrendelés részleteinek elkészítését mondjuk egy sablon megnyitásával, amiben már a design és a képletek benne vannak, a többit kell manuálisan megadni.ide szintén manuálisan meg lehet adni az előbbi táblaban felvett új sorszámot.Ha előbb az ajánlat részleteit csinálod meg, akkor a végén kinyithatod az ajánlatokat nyilvántartó munkafüzetet, és mindkettőben megadhatod a következő szabad sorszámot.
Mindezt automatizálási makroval lehetne.
Szokták még olyat, hogy a két táblát egyik irányba összekötik.
Az ajánlat rekord végén van egy link, ami atnavigal az ajánlat részleteire. Ehhez persze tudni kell az útvonalatIndulásnak ennyi
Imre
2021-08-05-18:01 Hozzászólás: [Resolved] Private Sub Worksheet_Activate makró futtatása egy másik munkalapról #8708Szia!
Hát, nagyrészt értem, amit szeretnél. Nem biztos, hogy teljesen.
Kicsit olyan, mint a róka fogta csuka.
Addig értem, hogy egy listából kiválasztasz egy elemet, és az ugye az adott cellára Change esemény lesz, és erre egy másik lapon szeretnél egy vagy több listaforrást frissíteni makróval.
Ami ezután jön, az nem világos, hogy egy másik legördülő menü forrásást készíted elő ezzel vagy ugyanazét?A kérdésedre:
– A munkalapok Activate eseménykezelőjét átrakhatod egy modulba (Sub bármi) és az Activate kezelőkben csak egy Call van erre a subra.
Ezáltal egy másik munkalap eseménykezelőjében is lehetne Call-al hívni.Az kicsit nehezíti a dolgot, ha „majdnem” ugyanaz a makró fut le a többi munkalapon…
Imre
Szia!
Ez azért van, mert Amerikában tizedes pont van, nálunk pedig tizedes vessző.
Te magyar Excel-t használsz, ezért a pontokat nem érti, de próbálja értelmezni.A magasság oszlopban csak egy cserét kell csinálnod, ahol kicseréled a pontot vesszőre.
A testsúlynál nehezebb a helyzet, mert ott amit tudott, dátumként értelmezett úgy, hogy hónap és év ponttal elválasztva.
Ha megnézed ezen cellák valós tartalmát pl. a szerkesztőlécben, akkor az adott hónap és év elsejét mutatja.
Utólag már elég nehéz visszanyerni az eredeti értéket.Próbáld meg azt, hogy mielőtt beilleszted az adatokat a weboldalról, azt a területet, ahová tenni fogod, szöveges típusra állítod az Excelben. Ha ezután illeszted be (Ctrl-V), akkor mindkét oszlopban jók lesznek az adatok, pontokkal.
Mindkettőben le tudod cserélni a pontokat vesszőre, és nézd meg, hogy ezután megy-e már az átlagszámítás.
Van egy függvény, amivel meg lehet nézni, hogy szám van-e egy cellában
=SZÁM(A2)
Ez IGAZ vagy HAMIS eredményt ad ettől függően.Imre
Nagyon szívesen
Persze.
Keresés-Csere az egész munkafüzetben.1. Ctrl-H
2. Mit Mire
3. Egyebek gombot megnyomod
4. Hatókört munkafüzetre állítod.Automatikus ilyen nincsen
Imre
Szia!
Megoldódott valahogy?
Nagyon különös a dolog, nem találkoztam még ilyesmivel.Kérdéseim:
– Csak ebben a munkafüzetben nem megy a laptörlés?
– Csak azt a lapot nem tudod törölni, amelyiken a CSV adatok vannak?
– Hogyan importálod? (PowerQuery vagy esetleg a régi importáló, ami a Szövegből oszlopok varázslóval indít?)Imre
-
A hozzászólás módosításra került: 2 years, 8 months telt el-
-
SzerzőBejegyzés