Hozzászólások
-
SzerzőBejegyzés
-
Szia!
Csak hogy jól értem-e:
Egy Excel fájl atnevezeset akarod tiltani a Windows intézőben?
Vagy egy nyitott munkafüzet (fájl) egyik munkalapjan egy tablazatta alakított tartomany atnevezeset?
Esetleg egy munkalap atnevezeset?
Imre
2020-09-02-22:20 Hozzászólás: Termék adatbázisban termékleírás módosítása az adott termék paraméterei alapján #7600Szia!
Kicsit túlságosan le van egyszerűsítve a minta szerintem, de ha ezt töltötted fel, akkor ez alapján dolgozunk…
Az egyik kihívás a nyelvhelyesség. Hogy az új leírás „A”-val vagy „Az”-zal kezdődjön (Az X termék, A Z termék), illetve a méret után „-as” vagy „-es” következzen. pl. 100-as vagy 70-es
Következő kérdés, hogy hogy néznek ki a terméknevek. X termék, Y termék ad egy mintázatot, de ha a valóságban lehet olyan, hogy „Acél lemez” és olyan, hogy „Hátamközepére való gumi alátét”, akkor megint baj van, mert ugye a termék nevét valahogy azonosítani kellene.
A te mintád alapján csináltam egy kísérletet a villámkitöltéssel, és meglepően jó lett.
1. Fogtam az első munkalapodat, beszúrtam egy oszlopot a régi termékleírás elé
2. Az új oszlop első cellájába beírtam, hogy „A 90×200 Sima X Termék” majd Ctrl-Enter (Hogy maradjon ott)
3. Ctrl+E (villámkitöltés)Office 365-ben csináltam, a villámkitöltés a 2013-as verziótól van, és nem tudom mennyire okosítják verziónként.
Éles adatokon szerintem nem lesz jó pont a terméknevek eltérése miatt, de azért próbáld ki.
Imre
Igen, a Zip buzerálás azért néha mellékhatásokkal járhat…
Szia!
Nos, letöltöttem mindkettőt.
Az eredetin van lapvédelem és egy rejtet munkalap „adat” néven.
A lapvédelem üres jelszavas, tehát le tudtam venni a védelmet a Véleményezés szalagon a Lapvédelem feloldásával.Nálam nem történt semmi különös, az adatérvényesítési listák megmaradtak.
Az adat lap is rendben van. Legfeljebb itt annyit mondanék, hogy ne tegyél listaforrást összevont cellákba. Nem baj, ha kilóg, kit zavar?
Ha az a problémád, hogy megszűnt az egyesítés, akkor csak ráerősítenék az előzőre.A lapvédelmet többször bekapcsoltam és feloldottam, minden rendben volt.
Te mit csináltál? Ugyanezt? És amikor kikapcsoltad a lapvédelmet, ekkor törlődött a szabály?
Ez abnormális. Én nem tudom reprodukálni.Imre
Kedves Csabi!
Egyszer már megbeszéltük, hogy hogyan kell feltenni egy fórumkérdést, mivel tudsz segíteni a kérdést értelmezőknek.
Ezt a kérdésedet olvastasd el bárki külsőssel, és nézd meg az arcát, hogy hogyan reagál.Csatolmány sincs, képlet sincs, érthető leírás sincs, eddig tett kísérlet leírása sincs, stb..
Annyit segítenék (de csak tippelem), hogy szerintem a táblázat fogalmat használod rosszul, illetve kevered a dolgokat.
Szóval egy Excel fájlt munkafüzetnek hívunk, azon belül pedig vannak munkalapok.Ha a fenti kérdés Táblázat részei helyett munkafüzetet helyettesítek, akkor eggyel érthetőbb.
De még mindig nem derül ki, hogy mit akarsz összegezni.Szóval kezdjük elölről.
Imre
Ez egy meglehetősen bonyolult feltételrendszer, amit egy darab Excel formulába nehezen lehet megfogalmazni.
Nem biztos, hogy lehetetlen, de előtte javasolt részfeladatokként megoldani.Nézzük először a változás rendszerességét
Szerintem ez még mindig nem világos, legalább is többféleképpen lehet értelmezni, mert nem világos, hogy a legalább 1/3-ban eltérést mihez képest kell nézni.
A fenti példádban 5-ször kezd A időpontban és 5-ször B időpontban. Ezek egymáshoz képest valóban 50%-ban térnek el.
De mi a teendő, ha 3, 4 vagy több különböző kezdési időpontja van?
Az Excel fájlban lévő példában 6 különböző kezdési időpont van.
Azt kell alapul venni, amelyik kezdés a leggyakrabban előfordult, vagy van egy általáns kezdés? És akkor az ettől eltérők számát osztani a teljes munkanapok számával ha jól értem.A legkorábbi és legkésőbbi kezdések különbsége
Ez egy MAXés egy MIN különbsége, nem kihívásA 30% műszakpótlékhoz mindkettőnek teljesülnie kell egy emberre vetítve egy hónapban.
Éjszakai pótlék
Ha az előz feltételek valamelyike nem teljesül, akkor éjszakai pótlék jár.
Ez ha jól értem, akkor óránként valamennyi százalék, amit nem írtál le.
A következőt szintén nem értem: „22:00-6:00, esetünkben kivéve 5:00-6:00..” Ez elvileg azt jelenti, hogy 22:00-5:00 és kész.
Itt még arra is kell figyelni, hogy a kezdet lehet-e az előző napot, vagy ha egy műszak tegnap kezdődik, de ma ér véget, akkor hogyan számotok?Hát, ezek merültek fel.
Imre
Szia!
Mert függőlegesen nem lehet. Ennyi.
Imre
Szia!
A feladat első részét kapiskálom.
Ha jól értem, akkor a pótlék oszlopban először csak azt számolnád, hogy hány órát kell pótlék alapnak venni.
Tehát ha 5 előtt kezd, akkor a kezdés és 6 óra közötti idő kell órában.Kérdéseim:
– Mi van a pontosan 5 órás és pontosan 6 órás kezdésekkel? (Te csak kisebbet ill. nagyobbat definiáltál)
– 5 és 6 között soha nem lesz kezdés? ha igen, akkor ott mi legyen?A hab részt nem sikerült teljesen felfogni. Gondolom valami jogszabály szabályozza ezt, de ennyi infó nekem kevés ehhez.
Imre
2020-08-25-23:08 Hozzászólás: [Resolved] Azonos "kulcs"-hoz tartozó megjegyzések (szövegek) összefűzése #7572Szia!
Jó helyen kapiskálsz, csak rossz a függvények sorrendje.
A tömb képzésénél az összehasonlításnál azt érdemes megjegyezni, hogy az eredmény annyi elemű lesz, amennyi elemű tömb van a bal oldalon.Te ezt írtad:
B4=E$4:E$7
Ennek eredménye az lesz, hogy a bal oldali 1 elemet összehasonlítja a jobb oldali tömb első elemével.
Mivel most megegyeznek, IGAZ lesz. A HA fv tehát a feltételt IGAZ-nak értékeli és így összefűzi a teljes tartományt a kulcsoktól függetlenül.
Ha az első kulcsot megváltoztatod, akkor meg HAMIS lesz, és az eredményed 0 lesz.Cseréld meg a jobb és bal oldalt:
$E$4:$E$7=B4
Így a bal oldal minden elemét összehasonlíja a jobb oldallal, és egy IGAZ/HAMIS tömböt ad. Eddig megvolnánk.A továbbiakban kell képezni előbb az egyező kulcsokhoz tartozó értékek tömbjét
HA($E$4:$E$7=B4;$F$4:$F$7;"")
Tehát ha egyezés van, akkor adja vissza az azonos pozíziójú értéket, különben üres sztringet
Végül ezt a tömböt kell összefűzni.
=SZÖVEGÖSSZEFŰZÉS(";";IGAZ;HA($E$4:$E$7=B4;$F$4:$F$7;""))
Csatoltam
Imre
-
A hozzászólás módosításra került: 4 years, 8 months telt el-
horvimi.
Attachments:
You must be logged in to view attached files.Egyik fontos pillér a lexikális ismerete, hogy tudd mik vannak egyáltalán.
Másik pillér a kreatív elhasználás, amikor felismered, hogy az adott problémát hogyan, milyen eszközzel lehet megoldani, illetve több lehetőség közül kiválaszd a legjobbat.Utóbbihoz tapasztalat kell és kitartás, tehát idő.
Sokszor megvan az ismeret lexikális része, de nem érmek össze a szálak, hogy egy adott szituációban mit is kellene csinálni.
Ezt nem igazán lehet tanfolyamon tanulni, mert minden tréning időkorlátok miatt véges számú (általában kevés) példán keresztül mutatja be a dolgokat és ez így van jól.A lexikális ismeretet lehet növelni könyvek elolvasásával, tanfolyamok elvégzésével, Excel blog-ok olvasgatásával, Excel fórumok látogatásával és a feldobott témák lekövetésével, stb…
Itt van rögtön ez az oldal, az Excel Bázis.
A felső menüben az ingyenes anyagoknál találsz közel 160 bejegyzést, amit 2013 óta publikáltam az Excel különböző, de főleg haladó területeiről.És van nekünk Excel haladó tanfolyamunk is, amit pedig a tanfolyamok között találsz.
Ha érdeklődsz, akkor a kapcsolati űrlapon keresztül ezt jelezheted, és küldünk értesítést az időpontokról.Kb. ennyi.
Imre
Szia!
Én nem látok csatolt fájlt vagy egyéb mintát.
De ennél fontosabb, hogy ilyen módon tanárok vagy főnökök szoktak feladatot megfogalmazni.
A felvetésből az következik, hogy adot számodra egy feladat, és majd mások megoldják neked.
Ez előfordulhat kisebb lélegzetű problémák esetén.Valószínűsítem, hogy a kérdés feltevésekor te is láttad a szabályokat, amiket kérek betartani lehetőleg.
Ez a kérdés szinte egyik szabálynak sem felel meg.Köszönöm,
Horváth Imre
Szia Jani!
A fenti egy köszönés volt. Ma ilyen népnevelő hangulatom van.
A végéről mag hiányzik valami hasonló: „Köszönöm a segítséget!”Mellékelt táblázatot nem látok, de valószínűleg a DARABTELI vagy a DARABHATÜBB függvényre van szükséged.
Emellett szerintem a PIVOT tábla is megoldás lehet.Imre
Szia!
Oldaltöréses megjeenítást kell kérni.
Több helyen elérhető, de a Nézet menü szalagján bal oldalon sorakoznak a nézetek, ot biztosan megtalálod.Imre
2020-08-13-20:04 Hozzászólás: [Resolved] Cellák másolásának tiltása teljes munkalapon, kivéve bizonyos tartományokat #7520Először is van egy rossz hírem.
A Ctrl-V-vel bármit be lehet másolni egy cellába akkor is, ha beviteli szabályt(pl. legördülő listát) tartalmaz.
Ez amiatt van, mert a cella másolásakor vagy mozgatásakor visz magával minden tulajdonságát, és az adatérvényesítési szabály is egy tulajdonság.
Ebből következően a trollkodást nem tudod megakadályozni.Szóval nincs igazán jó megoldás a problémára.
Ha mindenképpen meg szeretnéd próbálni, és úgy, ahogy leírtad, akkor elsőként próbáld ki azt a megoldást, amit abban a topic-ban olvastál, hogy működik-e.
https://excel-bazis.hu/forumok/topic/zarolt-cellak-masolasa#post-7479ha igen, akkor tovább lehet lépni abba az irányba, hogy a munkalapon belül kapcsolgatod a dolgot.
Van olyan esemény, hogy SelectionChange. Ez akkor van, amikor valaki egyik cellából a másikba kattint.
Ilyenkor meg lehet nézni, hogy olyan cellába kattintott-e, ami engedélyezett vagy sem.
Ha nem, akkor tiltod a Ctrl-C-t, különben engedélyezed.Ezzel persze makrós lesz a fájl, amit a felhasználó dönt el az indításkor, hogy engedélyez-e. Ha nem engedélyezi, akkor mehetünk a sóhivatalba.
Ez van.
imre
-
A hozzászólás módosításra került: 4 years, 9 months telt el-
horvimi.
Szia!
Az okát nem tudom megmondani, valószínűleg az események feldolgozási sorrendjében kell keresni az okot.
Viszont megoldás van rá, bár a szokásos VBA sufnituning.Ha a téglalap átmozgatása után olyan műveletet kezdeményezel, ami frissíti a képernyőt, akkor meg fog jelenni.
Tehát átteszi ő szegény, csak a képernyő nem követi le.A téglalap átrakása után tegyél be egy sort, Nem csinál érdemlegeset, e ettől frissül a képernyő.
ActiveWindow.SmallScroll down:=0
Imre
2020-08-13-11:45 Hozzászólás: [Resolved] Cellák másolásának tiltása teljes munkalapon, kivéve bizonyos tartományokat #7501Szia!
Elsőként kérdezném, hogy mit értesz másoláson.
Ebben a tartományban Ne működjön a Ctrl-C?
Vagy esetleg azt, hogy ne lehessen ide Ctrl-V-vel beilleszeni adatot?Imre
Szia!
Zip-et tölts fel, azt engedi.
Imre
Örülök!
Szia!
Kérdezném, hogy mit tettél eddig az ügyért?
Hol tartasz makrózásban?Különben nem feltétlenül kell ehhez makró, lehet automatizálni PowerQuery-vel. (Ha legalább 2016-os Exceled van.
A szükséges lapok tartalmát egymás után fűzi, az összefűzött táblát szűri a feltétel szerint az adott oszlopban, majd az eredményt betölti egy új munkalapra.
Ezek után bármelyik munkalapon új sorok keletkeznek, a betöltött eredmény táblát frissítve a feltételnek megfelelők is benne lesznek.Imre
Szia!
A CALCULATE DAX fv arra való, hogy az első paraméterben megadott összesítő számítást vagy mértéket, a további paraméter vagy paraméterekben meghatározott feltételek szerint szűrje.
Az első paraméter tehát egy összesítő számítás vagy egy mérték, amiben egy összesítő számítás van.Excelben van külön DARABTELI, DARABHATÖBB, SZIMHA, SZUMHATÖBB, STB…
DAX-ban ezeket mind kiváltja a CALCULATE. Szokták AKÁRMIHA függvénynek is hívni.
Például van egy bevétel oszlopod egy forgalom táblában. Ugyanebben a táblában vannak terméknevek, amiket ugye eladtunk és lett a bevétel.
Ha csak az egyik termékre vonatkozó bevételt szeretnég kiszámolni egy mértékbe, akkor jöhet a CALCULATE.CALCULATE(SUM(forgalom[bevetel]), forgalom[termeknev]="valamelyik")
Vessző után több feltételt is felsorolhatsz.
Imre
Google Spreadsheet-ben működik a dolog.
Itt vannak a legfrissebb vélemények
https://excel.uservoice.com/forums/274580-excel-for-the-web/suggestions/10366332-links-between-spreadsheets-in-excel-onlineKözben csináltam egy tesztet.
Helyi gépen a desktop Excellel megcsináltam két fájlt és egy külső hivatkozást közöttük
Elmentetten OneDrive-ra
Ott kinyitva Online Excellel azt tapasztalom, hogy letiltja a külső hivatkozásokat.
Lásd csatolt kép.Van még mit fejleszteni…
Imre
Attachments:
You must be logged in to view attached files.Szia!
Online Excelben jelenleg nem lehet áthivatkozni másik Excel munkafüzetbe.
Másik munkalapra lehet a szokásos szintaktikával.Nem próbáltam még, de kérdéses, hogy mi történik, ha mindkét munkafüzetet megnyitod Onedrive-ról, de a desktop Excelben, megcsinálod a linket közöttük, majd mented őket vissza OneDrive-ra, és utána megint megnyitod mindkettőt Desktop-on.
Vajon megmaradnak-e így a külső linkek benne vagy nem?
Imre
Mi is örülünk 🙂
Megnéztem a kódot, amit a PERSONAL-ban küldtél.
Ha jól látom, akkor a 9-es sorban van egy aggregáció a táblázat oszlopaira.
A 10-es sorban van a táblázat fejléce.
A 11-es sorban nem tudom mi van, az nem derül ki, gondolom az adatok részeként jön valahonnan, de teszel bele egy feltételes formázást az egyedi elemekre.
A 12. sortól vannak az adatok ha jól gondolom.Gondold át, hogy a 11-es sornak muszáj-e a táblázaton belül lennie.
Még egy javaslat: Az aggregációs sor és a táblázat fejléce között célszerű egy üres sort hagyni. Akármilyen kicsi magasságúra állíthatod, de nem szerencsés közvetlenül a fejléc fölé tenni.Imre
Hát, itt már elvi kérdéseket kell feszegetni.
Elsőként, táblázaton belül nem lehet másik táblázat.
Második, hogy táblázattá alakított tartományban egy oszlop elvileg csak azonos típusú adatokat tartalmazhat.
Fokozottan igaz ez a képletekre.
Bármely cellába beírsz egy képletet, azt kitölti a teljes oszlopra automatikusan. Nem kell Fill.Nem tudom, hogy mit tartalmaz ez a tábla, mire használod, stb.., de ha egy oszlopban keverednek az értékek és a képletek, az az álmos könyv szerint nem szerencsés.
Érdemesebb ketté venni vagy a képletet egy külön oszlopba tenni.Természetesen van makró kód, ami kijelöl egy oszlopot egy konkrét cellától a végéig.
Leírom neked, de szerintem még nagyon sokszor meg fogsz akadni.Range(Range("J12"),Range("J12").End(xlDown)).Select
Ha felveszel egy makrót, ahol a J12-re kattintasz, majd nyomsz egy Ctrl-Shift-Lenyíl kombinációt, akkor valami hasonlót fogsz kapni. nem ugyanezt, de lényegében igen.
Ha az Excel lenne a hobbid, akkor alaposan meg kell ismerned a lehetőségeit, és utána azt makrózni.
Épp holnap indul egy délutános Excel haladó kurzus távoktatásban. Nem érdekel? 🙂
https://excel-bazis.hu/tanfolyam/excel-haladoknakSok mindent megtudhatsz a táblázatokról is.
A probléma a szokásos.
Keresel, ollózol, próbálod, de nem tudod mit is csinálsz valójában.Szerintem azért van, mert a méretezéskor megtartja a kép méretarányát, hogy ne nézzen ki bénán.
Ha ezt kikapcsolnád, akkor széthúzná, de torzulna a kép.Imre
Ja, bocs!
A CurrentRegion után nem kell a zárójel bezárás.
Javítottam fent.CurrentColumn nincsen 🙂
Ha már sikerült táblázattá alakítani, akkor a J oszlopot én már név szerint használnám, mert akkor nem számít meddig tart.Range("Táblázat1[oszlopnév]").Select
Nézd meg azt a tanfolyamot, indulásnak sokat segítene.
Van benne utolsó sor megállapítás is különböző esetekre.Imre
A csatolt VBA kódban ott van a megoldás nem?
Mi a gond?Szia!
A cellának van top, left, width, height tulajdonsága
A kép ugyenezen tulajdonságait kell egyenlővé tenni a cella azonos tulajdonságaival.Imre
Szia!
Makrós fájlokat ZIP-ben lehet feltölteni.
Ha a táblázat mindig az A10-ben kezdődik, akkor elég megadnod az A10 körülötti tartományt, amit így kell:
ActiveSheet.ListObjects.Add(xlSrcRange, Range("A10").CurrentRegion, , xlYes).Name = "Táblázat1"
Ha ezeket az alapokat meg szeretnéd tanulni, ajánlom figyelmedbe a makrók alapjait bemutató videó tanfolyamunkat:
https://videotanfolyam.pentaschool.hu/Imre
-
A hozzászólás módosításra került: 4 years, 9 months telt el-
horvimi.
Örülünk 🙂
Nem tudom, hogy másoltad ki a képletet a weboldalról, de nem jól az biztos.
Ha csak a szürke részből veszed ki a szöveget, akkor jónak kellene lennie.
A @amp, @quot nem lehet benne. Ezek a weboldal kódjai az & jelnek és az idézőjelnek. Látszik, hogy az Exceledben nem ugyanaz van a képletben, mint amit a válaszban írtam.Mindegy, akkor csak a szemeddel követve írd le ugyanazt a képletet, amit a szürkében látsz.
Ez egy sima FKERES, ahol a bal függvénnyel kivett 8 karakter után fűzünk még egy csillagot.
Imre
Szia!
Ha mondjuk az első 8 karakterben biztosan megegyeznek, akkor jó úton indultál el, legfeljebb a hogyanban tévedtél kicsit.
Az FKERES-t így kell megírni, hogy csillagot tartalmazzon a keresendő tétel a végén:=FKERES(BAL(B2;8)&"*";A:A;1;0)
Tehát a BAL függvény leszedi az első 8 karaktert és ezután kell még varázsolni egy csillagot a „&” jellel.
Kipróbáltam a mintádon, simán hozott minden adatbázis nevet.Imre
Szia!
A megoldáshoz kell egy kis pontosítás.
Kérdések:
– Az adatok mindig az A1-től kezdódnek?
– Változó, hogy meddig tartanak? (sor és oszlopirányra is kérdezem)
– Az kijelenthető-e, hogy ha belekattintasz az A1-be, és nyomsz egy Ctrl-A-t, akkor a keletkezett kijelölés utolsó 3 oszlopa kell?
– Lehetnek-e az utolsó 3 oszlopban üres cellák?
– Lehetnek-e az első sorban A1-től a végéig üres cellák?Imre
2020-07-13-23:25 Hozzászólás: [Resolved] képfájlok neveinek kiemelése váltakozó hosszúságú szakaszból #7371Örülök, hogy segített.
Mondjuk ez nem kezdő szintű makró.
Rövid ugyan, de kell hozzá programozói ismeret, tapasztalat, és persze VBA ismeret is, hogy itt hogy kell ezt megcsinálni.Ha el akarod kezdeni, indulásnak ez tökéletes lehet:
https://videotanfolyam.pentaschool.hu/courses/excel-automatizalas-makrok-alapjaiImre
2020-07-13-08:15 Hozzászólás: [Resolved] képfájlok neveinek kiemelése váltakozó hosszúságú szakaszból #7367Szia!
Függvényes megoldást nem sikerült kitalálnom hozzá, így maradt a makró.
Volt hozzá kedvem,és ötletem is úgyhogy gyorsan összedobtam neked.Az eredeti szöveget szétdobja egy tömbbe a „|” jel mentén, minden elemben megkeresi az utolsó slash utáni szöveget és csak az marad benne, végül összeilleszti „|” jellel elválasztva. Elég egyszerű
Function getmultiplefilenames(text As String) As String Dim arr() As String Dim last_slash_pos As Long Dim i As Integer Dim res As String arr = Split(text, "|") For i = 0 To UBound(arr) last_slash_pos = InStrRev(arr(i), "/") arr(i) = Mid(arr(i), last_slash_pos + 1, 99) Next i res = Join(arr, "|") getmultiplefilenames = res End Function
UDF-ként is használható, így töltöm vissza, az eredmény oszlopban ott vannak a képnevek ahogy szeretted volna.
Imre
Attachments:
You must be logged in to view attached files.2020-07-10-11:57 Hozzászólás: [Resolved] Egy cella értéke egy mésik cella értékét másolja adott helyre #7359Igen, ez egy tipikus kimutatás feladat.
Hozzátettem még egy hónapot.
csatolva.Imre
Attachments:
You must be logged in to view attached files.2020-07-10-10:32 Hozzászólás: [Resolved] Egy cella értéke egy mésik cella értékét másolja adott helyre #7356Szia!
Nem teljesen érthető, amit írsz, de tippelni lehet.
Sokkal jobb lenne, ha töltenél fel egy kis minta fájlt ilyenkor, és abban benne lenne pár reprezentatív adat, és az is, hogy a másik munkalapon mit szeretnél eredményül kapni.Például csak implicit derül ki, (meg persze a tapasztalat útján), hogy a a bevételekhez és a kiadásokhoz nyilván dátum is kapcsolódik.
Amit én javaslok:
– A beviteli táblát alakítsd táblázattá
– Az összesítő lapon csinálj egy kimutatást (Pivot tábla) a táblázat alapján
– Dátum, költséghely, Szumma bevétel és szumma kiadás
– Az új adatok a PIVOT frissítésekor automatikusan megjelennek.Ha ez nem fele meg, mert a Pivot-ot kézzel kel frissíteni, akkor lehet csinálni egy mnakrót, ami a beviteli lap minden változásakor frissíti a Pivot táblát, vagy
Lehet csinálni egy összesítő táblát képletekkel is (SzumhaTöbb)
Imre
Szuper.
Megnyugodtam…:-)Ha esetleg legközelebb is makró témában kérdeznél, javaslom, hogy a forráskódot formázd is meg kódként.
Ai inputbox tetején ott egy „code” feliratú gomb.
Az én hozzászőlásaimban látod az eredményét.
Fő vívmányí, hogy a szóközt, kacsacsőrt, idézőjeleket, stb.. nem alakít át, hanem sima szöveg marad, a kód kimásolható marad.I
Szuper! Az önállóan megoldott feladatok adják a legnagyobb sikerélményt.
Ugyan nem értem mit csináltál, de nem is erőlködöm nagyon.I
Szia!
Ezt úgy szokták csinálni, hogy nyomtatás előtt elrejtik az üres sorokat.
Egyik lehetőség, hogy kijelölöd a teljes 200 sort, választasz ehhez egy oszlopot és futtatsz egy autofiltert, ami a nem üreseket tartja meg:Selection.AutoFilter Field:=1, Criteria1:="<>"
Ha ez nem válik be, akkor pedig a teljes 200 soron futtetsz egy ciklus, és ha üreset talál, akkor elrejti azt a sort.
Itt egy minta:For Each xCell In selection.Columns(1).Cells If Application.WorksheetFunction.CountA(xCell.EntireRow) = 0 Then xCell.EntireRow.Hidden = True End If Next
Imre
Természetesen, én is így gondoltam.
Próbálom lekövetni.
Nézzük először manuálisan
1. Megnyitod az eredt fájlt (ami xlsb?)
2. Megnézed, hogy a PIVOT-ok honnan táplálkoznak. (Biztos mindegyik az aktuális munkafüzetből, tehát max munkalapnév van a hivatkozásban?)
3. Mentés másként (xlsx-ként akarod menteni?)
4. Bezárod
5. Kinyitod az új fájlt
6. megnézed a PIVOT-ok forrását
7. És az eredeti fájlra mutatnak?Ha ez mind így van, akkor nagyon érdekes.
Látnom kellene ezt a fájlt.Imre
2020-06-30-14:58 Hozzászólás: [Resolved] Dinamikusan frissülő (rövidülő/bővülő) adatérvényesített legördülő lista #73302020-06-30-09:33 Hozzászólás: [Resolved] Dinamikusan frissülő (rövidülő/bővülő) adatérvényesített legördülő lista #7328A Mike Ervin videóban 2007-es Excellel dolgozik, és régi tömbképletekkel operál. Ő is 3 listával operál.
Nézd meg, hogy a te Excel-edben benne vannak-e az új tömbképletek!Úgy tudod ellenőrizni, hogy egy cellában lenyomsz egy egyenlőség jelet, és utána beütsz egy X-et.
Ha a feljövő listában van XKERES vagy XLOOKUP (angol verziónál), akkor lesz EGYEDI és SZŰRŐ is
A logika ugyanaz, ha lesz ma időm eljátszogatok vele.
De másik munkafüzetben nem lehet, vagy legalább is nagyon macerás, és fix munkafüzetneveket tartalmaznának a képletek.
Szóval a forrás listák és a célhely is egy munkafüzetben legyen.
Ez neked kizárt?Imre
2020-06-29-23:54 Hozzászólás: [Resolved] Dinamikusan frissülő (rövidülő/bővülő) adatérvényesített legördülő lista #7324Kedves Attila!
Nem látom teljesen lehetetlennek a dolgot, de akadhat néhány feltétel.
– Képletekkel esetleg Office 365-ben az új tömbképletekkel látom megoldhatónak.
– Az alap névlista és a kiosztás helye ne legyen különböző munkafüzetekben. Lehet, h úgy is menne, de nagyon esetleges. Másik munkalapon lehet ugyanabban a mf-ben.A színezgetés, amit a végére írtál, olyan nincs.
Itt tulajdonképpen 3 listáról beszélünk
– Eredeti névlista, innen lehet kiosztani neveket
– Már kiosztott nevek
– Az előző kettő különbsége, a még nem kiosztott nevek. Ez lehetne a legördülő lista forrása.Kezdetben a teljese eredeti listát tartalmazza, és a már kiosztottak függvényében fogyatkozik vagy nő.
Ahogy így írom, egyre inkább látom, hogy megcsinálható.
szerintem.
Tudni kellene, hogy melyik Excel-t használod.
Ha nem Excel 365, akkor felejtős, marad esetleg a makró.Imre
Szia!
A megoldáshoz azt kell tudnod, hogy ezek a függvények a feltételt mindenképpen szöveges formában várják.
Elég béna, de így van.Emiatt a DARABTELI-s megoldás kísérlet eleve nem fog menni, mert az ÉS függvény logikai kimenetet ad.
Ha a feltétel nem egyenlőség, hanem egyenlőtlenség egy cella tartalmával, akkor meg kell oldani, hogy szöveges legyen a feltétel. Ezt így szoktuk:=DARABTELI(A1:A10;">"&C2)
Ez megmondja, hogy az A1:A10 tartományban hány olyan érték van, ami nagyobb, mint a C2-ben lévő.
Ebből kiindulbóva a DARABHATÖBB függvényed meggyógyítható.
=DARABHATÖBB(‘Routes (S20 July)’!$U$2:$U$1100;">"&A2;’Routes (S20 July)’!$U$2:$U$1100;"<="&B2)
Imre
Örülünk!
2020-06-26-13:26 Hozzászólás: [Resolved] [Resolved] Ismétlődő értékek módosítása feltétel alapján #7311Amit Delila írt, az ugyanaz, amit én javasoltam, csak ő összevonta a dolgokat és segédoszlop nélkül csinálta.
Össze fog ez jönni 🙂
2020-06-26-12:03 Hozzászólás: [Resolved] [Resolved] Ismétlődő értékek módosítása feltétel alapján #7307Szia!
Ha jól értem, akor azt szeretnéd, hogy pl. a 00517-es termékhez csak egyszer hozza át a másik táblából az érteket, a többihez pedig ne.
Nekem most egy olyan gondolatom támadt, hogy ha csinálnál egy segédoszlopot, ami besorszámozza az előfordulásokat, akkor egy HA függvénnyel megoldható a dolog.A segédoszlop képlete, feltételezve, hogy a fenti táblád az A1-ben kezdődik:
=DARABTELI($A$1:A1;A1)
Ott lesz 1-es, ahol az A oszlopban egy azonosítónak az első előfordulása van. Tulajdonképpen besorszámozza az előfordulásokat.
És akkor az FKERES-t csak akkor csinálja meg, ha ebben az oszlopban 1-es van, különben dupla macskaköröm 🙂
Imre
Szia!
Mégis mi a hibaüzenet?
Ha jó látom Onedrive-on van a fájl vagy SharePointon.
Mivel szóközök vannak a nevében, érdekesen néz ki az elérési útja.
(Meggondolnám a szóközök scseréjét kötőjelre vagy alulvonásra, bár ahibát nem hinném, h ez okozza)Mindenesetre webes URL az elérési útja.
Szerintem ez lehet a baj.A webről nyitod meg, de a te gépeden kell bezárni.
Ezt én elsőként úgy próbálnám,hogy a mikor megnyitom, akkor letárolom a nevét, és a bezáráskor azt használom.Konkrétan:
A megnyitás után tennék egy sort
f=ActiveWorkbook.Name
És így a bezárás:
Workbooks(f).Close SaveChanges:=False
Imre
Szia!
Mire idejutottam, már megoldottad.
Bocsi, és köszi az infót!Imre
-
A hozzászólás módosításra került: 4 years, 10 months telt el-
horvimi.
Szia!
Az FSO objektum használatával elvileg külön lekérhető az aktuális fájl kiterjesztése is.
Példáulext = FSO.GetExtensionName(File)
Tehát amikor mész a ciklussal, akkor beteszel egy IF vizsgákatot, és csak akkor írod ki a munkalapra az aktuáluis fájl adatait, ha a kiterjesztése „mp3”
Imre
-
A hozzászólás módosításra került: 4 years, 10 months telt el-
horvimi.
Örülök, hogy sikerült.
Azért érdemes megfontolni a többit is, amit írtam, ha fejlődni szeretnél.
Szia!
Én az utolsó 2 helyen látom a sárgákat.
Elárulod, hogy mi alapján szeretnéd sorbarendezni?
Gondolom gólok száma szerint?Ha a cellába beírod, hogy „23 gól”, akkor az szöveges lesz, és a rendezésnél ABC sorba fogja tenni.
A gól szót (ha már mindenképpen ki akarod írni, akkor tedd egy másik oszlopba, vagy állíts be egyéni számformátumot, hogy a számok mögé írja azt, hogy gól, és mégis szám maradjon.Ezen kívül még az is probléma, hogy a sárgák esetén a számok előtt szóközök vannak. Ettől megint szöveges lesz.
A cellában nem lehet semmi, csak számjegy!Imre
Szia!
A „J3”-ba írandó képlet:
=FKERES($D3;'S5 ADAT'!$A:$HF;HA(H3="SZO";20;HA(H3="MONDAT";27));0)
Nekem most magyarul van, csak át kell írnod a függvényneveket, és esetleg a függvényparaméterek elválasztóit pontosvessző helyett vesszőre, attól függően, hogy mennyire angol a rendszered.
2 hiba is volt még benne.
Egyik, hogy ha pontos egyezőségre keresel, akkor a VLOOKUP-nak meg kell adni egy negyedik paramétert, ami nulla.
Másik, hogy az IF függvényeket egymásba kell ágyazni, olyan nincs, ahogy te leírtad.=IF(x="szo";mi legyen ha igaz;mi legyen ha hamis)
A hamis ágon, azaz ha nem SZO, akkor még egy vizsgálat kell a Mondat-ra. de csak akkor, ha van egyéb lehetőség is.
Ha x=”szo”, akkor 20, különben ha x=”mondat, akkor 27. A második ha után lenne még egy különben ág, ahol az lenne, ha se nem szo, se nem mondat. De ez nem kötelező, csak tudj róla.Konkrétabban.
=IF(x="szo";20;IF(x="mondat";27))
Ha csak „Szo” és „Mondat” lehet, más nem, akkor egyszerűbb a helyzet, mert akkor csak
Ha x=szo akkor 20 különben 27=IF(x="szo";20;27)
Imre
-
A hozzászólás módosításra került: 4 years, 10 months telt el-
horvimi.
Szia!
Ha a sokszorositast mentés maskenttel csinalod az egész munkafuzetre, akkor jo lesz.
Ha munkalaponkent teszed át uj munkafuzetbe, akkor vissza fog hivatkozni.
Utobbi esetben tehát a pivotok adatforrasat egyesevel modositanod kell.Imre
2017-es Excel nem létezik.
Fájl -> FiókGyanítom, hogy 2016.
Ha esetleg Office 365 lenne, akkor van függvény az egyedi elemek kigyűjtésére.
Ha nem az van, akkor itt egy cikk, amit írtam, ebből meg tudod csinálni.
https://excel-bazis.hu/tutorial/egyedi-ertekek-dinamikus-kivalogatasa-dinamikus-keplettelImre
Szia!
Milyen Excel verziod van?
Ja, most látom, hogy 8 órás napot szeretnél.
Ehhez át kell egy kicsit írni a matekot.csatoltam
Imre
Attachments:
You must be logged in to view attached files.Szia!
Az IF és a VLOOKUP kombó jó lehet, szerintem nem ez a probléma.
A „hibát írt ki” mit jelent? #NA? Azaz nem találta amit kerestél?Tölts fel egy mintát, tedd bele, hogy mit szeretnél eredményként látni
A próbálkozást is benne hagyhatod.Imre
Ez csak egy kis matek
Az excelben 1 nap = 1 egész, 1 nap pwedig ennek a24-ed része.Az 55:00 az 2*24 óra, és még 7 óra
Matekozni kell.
Csatolatam képen
ImreAttachments:
You must be logged in to view attached files.Sziasztok!
Én még nem néztem meg a fájlt, de nagymértékben függ a teendő attól, hogy csak megjeleníteni akarod így, vagy aztán számolni is akarsz vele tovább.
Ha csak megjeleníteni, akkor Delila megoldása biztosan jó.Imre
Hűha!
Ennyire alapos leírásra nem számítottam.
Most az van, hogy a lépéseket értem, de az nem várható el az adatok és a feladat pontos szakmai ismerete nélkül, hogy alternatív megoldást adjak.Kérdések:
Jól értem-e, hogy az eredménytábla sorainak száma az év során növekedve elérné az Excel max sorainak számát, és ezért vagy kénytelen plusz lépéseket, előválogatásokat tenni bele.
Tehát, ha nem lenne korlát, akkor kevesebb lépés is elég lenne?A betöltött eredménytáblából készül egy PIVOT riport? Én nem látok ilyet a folyamat végén
Ezt az előző hozzászólásban is megkérdeztem, de nem kaptam választ, vagy nem tudtam kibányászni az előző leírásból.Ha ez lenne, akkor meg lehetne próbálni kiiktatni a helytakarékosságra irányuló bonyolultabb összevonásokat, és inkább az eredményt PowerPivot adatmodellbe lehetne tölteni, és onnan készíteni PowerPivot táblákat.
Ezt szintén javasoltam már, de nem reagáltál rá.
A PowerQuery Merge (FKERES) műveletben egy lépésben csak kettő tábla tud részt venni.
Imre
2020-06-15-20:40 Hozzászólás: [Resolved] Webáruház termék adott paraméterének átmásolása másikba id alapján #7234Szuper, örülünk!
2020-06-14-16:51 Hozzászólás: [Resolved] Webáruház termék adott paraméterének átmásolása másikba id alapján #7229Elolvastam a második bejegyzést is, ahol azt látom, hogy itt valójában a keresés szempontjából 2 kulcs van. A termék_id és a nulla (HAMIS)
A továbbiak feltételezik, hogy ha egy termék id először fordul elő, akkor az alap termék, tehát ebben az oszlopában nulla 0 vagy HAMIS van (Kicsit félrevezető megfogalmazás, de ezt írtad le, bár a megállapításhoz alkalmazhatsz pozitív állítást is, azaz a nulla legyen az IGAZ.)Ha két oszlop (termék_id és alap_termek) összefűzéséből készítesz egy kulcs oszlopot az elejére, akkor ebben kereshetsz Delila képletével.
=FKERES(B2&0;A:D;4;0)
Keresi az eredeti termék id-t összefűzve a nullával az új A oszlopban (kulcs), és az első előforduláshoz tartozó termék tulajdonságot adja vissza a 4. oszlobból
Be is csatoltam a fájlt.
Imre
Attachments:
You must be logged in to view attached files.2020-06-14-16:15 Hozzászólás: [Resolved] Webáruház termék adott paraméterének átmásolása másikba id alapján #7228Sziasztok!
Ha a fenti táblából ki lehet iondulni, és az id-k alapján sorbarendezve van, azza az egyfiorma id-k egymás alá kerültek, ÉS az első előfoordulás mindig a lefelé kitöltendő adat, akkor delila megoldás is jó lehet, bár nem látom, hogy minek bele a HA fv. Főleg, hogy a HA(IGAZ…) azt eredményezi, hogy miondig az IGAZ ágat csinálja meg. Szóval szerintem a belsejében lévő FKERES is elég lehet, ami mindig az id első előfordulásához tartozó adatot fogja visszaadni.
Ezt még szokták úgy is csinálni, egy ha függvénnyel, hogy ha az aktuális sorban lévő cella nem üres, akkor vegye át, különben vegye a felette lévőt. Ez sok adat esetén jelentősen gyorsabb.
Tehéát kati ábrája szerinti D2-be írható ez a képlet, majd mehet lefelé:=HA(C2<>"";C2;D1)
Imre
Szia!
Mondtam, hogy kérdezni fogok, mert a válaszhoz pontosan értenem kell amit szeretnél csinálni.
Először is le kell szögezni itt is, hogy csodák nincsenek, sok adattal sokáig tarthat a feldolgozás.
De azért érdemes megnézni, hogy mit is csinálsz tulajdonképpen.Kérdéseim:
– Havi tábla összefűzésről van szó mappából? A teljes folyamat érdekel az elejétől a végéig.
– Az összefűzött eredménytáblával utána mi a teendő? (Gondolom ebből havi szinten keletkezik valami riport. Pivotok, vagy egyéb elemzés.
– Az előszűrés után betöltöd munkalapra, és a következő lekérdezést ezen alapítod? Vagy ezt felhasználva különbséget képzel?Meggondolandó
Ha az eredeti gondolat szerint összefűzött táblával meghaladnád az Excel munkalap méretét, akkor töltheted az eredményt PowerPivot adatmodellbe is, így nem kell kétszer nekifutni.Imre
Szia!
Több megoldás is van rá, de ha konstans dátumot szeretnél, akkor legbiztosabb a DÁTUM() függvénnyel.
=HA(feltétel;DÁTUM(év;hónap;nap);DÁTUM(év;hónap;nap))
Imre
Na szuper!
Örülök, h sikerült!Szia!
Ez csak eseménykezelő makróval oldható meg.
Ez azzal jár, hogy1. Meg kell csinálni ezt a makrót, beletenni a fájlba
2. Indításkor a felhasználónak engedéyeznie kell a makrókat. Ha nem teszi, nem fog működni, így simán lehet majd menteni.Ha mégis a makró mellett döntesz, akkor:
Nézz utána a munkafüzet BeforeSave eseményére, amit VBA-val lehet lekezelniItt pl. el tudsz indulni, egy hasonló probléma:
https://answers.microsoft.com/en-us/msoffice/forum/all/preventing-excel-from-saving-when-any-cell-is/6827e11d-000f-474a-be7a-130faa7c2a78Imre
Háromszor elolvastam, de nem értem, h mit szeretnél.
Mondjuk eleve nem értem, hogy miért van ilyen Mátrix formátumban a tábla.
Az első oszlopnak kellene lennie a fejlécnek, és alatta a rekordok.vagy épp ez a feladat?
A null-ok gondolom azok, ahol nincs megadva adat az illető adatlapján. Mit szeretnél velük?
Imre
Végül is csak egyszer kell megcsinálni, talán nem halunk bele.
Képezd képlettel az összes szombatot 7 naponként, majd értékként visszarakod, és kiveszed azt a kettőt. 1 perc.
Nem régóta van ez benne.Örüljünk, hogy valahogy lehet. Nem?
Szia!
Így nem lehet, de ha különben ismered a munkanapos függvényeket (Gondolom igen, mert különben nem tudnál az egyedi ünnepnap listáról), akkor nézd meg jobban őket.
Az INTL végűeknek van egy „hétvége” paramétere, ami default-ban az 1-es, ami szerint a hétvége a Szombat és Vasárnap.
Ha ezt 11-re állítod, akkor csak a vasárnapokat tekinti hétvégének.Így az utolsó paraméterben az ismert módon megadhatsz egy tartományban minden olyan napot, ami nem munkanap.
Itt megadhatod a pihenőnapnak számító szombatokat, és minden egyéb munkanap áthelyezés működni fog egészen addig, amíg be nem fogják a vasárnapot is munkára.Imre
A fentiek alapján készíts egy feladat specifikációt (mit szeretnétek), és ajánlatkéréssel küldd el a
horvath.imre@pentaschool.hu címre.Imre
Még meg kell nyomni a tallózást, és utána találod jobbra lenrt az „Eszközök” felirat mellett a kis fekete lenyitót.
Ebben van a Beállítások. csatoltam egy képet.
————————————————————————
Nincs külön beállítás, hogy figyelmeztessen a lapvédelem állására.
Ezt csak eseménykezelő makróval lehet megtenni, amit bele kell tenni a fájlba. Mentéskor vagy bezáráskor ellenőrzi, hogy védett-e egy adott munkalap.
Ettől makrós munkafüzet lesz, ami további bonyodalmakat okozhat a felhasználóknál.Szóval légy figyelmes, vagy ha nagyon fontos, és mindenképpen szeretnéd, akkor majd van rá megoldás tehát, de csak akróval.
Imre
Attachments:
You must be logged in to view attached files.Hali!
Ehhez még annyit tennék hozzá, hogy ha valódi, szerveres hálózatban vagytok, és nem a saját gépeden osztod meg a fájlt, akkor a valóban jó védelem az a hálózati védelem.
Ehhez a rendszergazdát kell megkérni, hogy a szerveren neked teljes jogot, a többieknek csak olvasási jogot adjon erre a fájlra vagy mappára.Az Excel saját, munkafüzet szintű védelmi rendszere, amit delila is írt, működik ugyan, de könnyen feltörhető.
Munkahelyi környezetben nem nagyon szokás törögetni, de azért jó, ha tud erről az ember.Imre
De alkalmas rá, meg is csináltam. Sőt, fentebb le is írtam, hogy mit kell csinálni.
Imre
Szia!
Ha ez a diagram a weboldalon működött, akkor nagy valószínűséggel nem Excel diagram.
Vagy egy Javascript, vagy esetleg beágyazott Power BI, esetleg Tableau, vagy hasonló.Excelben natívan nem leht ilyet csinálni.
Makró programozással talán, látok ilyesmi jeleket, de eléggé összetett a dolog.Szóval javaslom a Power BI-t.
Most lesz épp egy tréning:
https://pentaschool.hu/excel/power-bi-tanfolyam-alapok.phpImre
Szia!
ha jól értem, akkr az a feladat, hogy a személyi adatokat tartalmazó excel munkafüzetekből időnként készíteni egy friss adattáblát. A személyi adatok egymás alatt vannak, ezekből kellene elforgatni (Transzponálni) és így rekordokat gyártani, és ezek összefűzéséből készíteni a táblát.
Jó irány lenne a PowerQuery, jobb, mint a makró szerintem.
Nem tudom, hogy mi nem sikerült a transzponálás során, de ha valóban így néznek ki a személyi adatlapok, legalább is így kezdődnek, akkor azzal kell nyitni, hogy az automatikusan előreléptetett fejléc lépést kitörlöd, majd kiszeded az ADATLAP szöveget tartalmazó első sort.
Ezután már mehet az elforgatás.Tehát a mappából történő összefűzés klasszikus estével állunk szemben.
Elegáns lenne és makrómentes. A kolléganőnek csak frissítenie kellene az „adatbázist”,ha valami változás volt.
Mondjuk rengeteg dolgozó esetén ez eltart egy darabig, de a makró is…————————————————————
A makrónál pedig az a probléma, hogy amikor az „adatbázis” tartalmát törlöd, akkor Clear parancsot használsz, ami nem törli ki a táblázat objektum sorait, csak a tartalmukat.
A táblázat összes sorát a
Táblázat_Objektum.DataBodyRange.Delete
paranccsal lehet törölni.
Javaslom, hogy tanulmányozd a ListObject esetén használandó hivatkozásokat!
Imre
Szia?
Az Excel rosszul kezeli a Lastcell információt, érdemes kerülni a használatát.
Ha az eredmény tartomanyod az első sorban kezdodik mint most a D1-ben, akkor meg kell mérni, hogy a D1-tol kezdődő tartomanynak hány sora van, az leaz az utolsó sor, es oda kell ugratni a Lastcell helyett.Most nem vagyok gépnél, mobilról irom, de valami ilyesmi kell:
Range(“D1”).Select
S=Activecell.Currentregion.Rows.Count
Range(„D”&S+1).Select
ActiveSheet.PasteHogy nem lép vissza a Munka4 B1 cellajaba, azt kétlem, ha letezik, próbáld lépésenként, F8-al futtatni
Imre
Találtam egy ilyet, ami nem az, de valami.
Szóval a Flow volt/van a felhőben működó PowerQuery.Ha jutsz bármilyen eredményre, azzor írj, mert érdekelne, de szerintem nem lesz egyszerű, ha egyáltalán.
Szia!
Én nem hinném, hogy lehet ilyet csinálni.
A letöltés megnyomása egy szerver oldali folyamatot indít, a fájl dinamikusan generálódik.
A linkje lehet, hogy mindig ugyanaz, azt tesztelheted esetleg, de ha ahhoz a linkhez akarsz csatlakozni közvetlenül, akkor
1. Nem lesz ott semmi
2. Az előzőleg generált fájl lesz ottEzt véleményem szerint egy magasabb szintű automatizációs eszközzel lehetne megcsinálni.
A Microsoft Flow lehet esélyes, amit nemrég átkereszteltek Power Automate-nek.Nézz utána, hátha!
Halandók számára nem tudom, hogy elérhető-e ez, még nem foglalkoztam vele.
Ezzel lépne be a MS a RPA világába.Imre
Azt meg lehet csinálni, hogy a képleteket szövegként átvinni a másolati munkafüzetekbe, sőt, ezt másképp nem is nagyon lehet.
De magától nem fog átkerülni, illetve nem fog szövegből képletté alakulni.
Tehát ha jól értem, akkor a felhasználók adatfelvitelre használják az exceleket, amiket az ő gépeik szinkronizálnak a felhőbe, ahonnan a te géped szinkronizálja őket le hozzád. ha te módosítasz a másolatokon, akkor az automatikusan felkerül, és lekerül hozzájuk.
És a cél az lenne, hogy maradjanak meg az adatok az ő példányaikban.
Tehát a módosítás új kalkulált oszlopokat, illetve a meglévő kalkulációk módosítását jelentheti, és ezt a módosítást kellene úgy leszinkronzálni a másolati példányokon, hogy a fix oszlopokan lévő adatok megmaradjanak, de az új kalkulációk lépjenek életbe.Makró nélkül neked kell manuálisan a képleteket, új kalkulálációkat átvinni a mesterpéldányból a másolati példányokba a te gépeden.
A képletek részt kezdem nem érteni.
Mintha azt írnád, hogy csak a 2. sor tartalmaz képleteket, Jól értem?Masszírozhatjuk még egy kicsit a specifikációt, de a mostani értelmezésem szerint ezt makró programmal lehet megcsinálni.
A komplexitását látatlanban nem tudom megítélni.A feladat túlmutat az ingyenes fórum határain.
Imre
Örülök! 🙂
Kedves Nimi!
Ha jól értem, akkor van egy „Mester” fájl, amiben módosítasz valamit (ezt fontos tisztázni, hogy mit), és ez a változás történjen meg a felhőben lévő összes „másolaton”.
Te egy vagy több képlet módosításról írsz.Kérdéseim
—————–
– A felhő az mi? Google Drive? OneDrive?…
– A másolati példányok egy helyen vannak a felhőben, és más-más neveken vannak megosztva más-más emberekkel vagy csoportokkal?
– A felhasználók hogy használják ezeket? Online szerkesztik, vagy letöltik magukhoz és visszatöltik, vagy esetleg Saját gépükön futó Exellel nyitják meg a felhőből és oda mentik vissza használat után?
– Az is életszerű, hogy a példányokban már benne lévő adatok nem változhatnak, csak a képletek?
– A felhőben lévő fájlokat az emberek írják, vagy csak olvassák?
– Egyszóval hogy működik ez a dolog nálatok? Mire használjátok?Mindenesetre koncepcionálisan nem annyira tűnik jó megoldásnak, hogy ilyen másolati példányok vannak.
Gondolom ezeket néha össze is szeditek és a tartalmukat összemásoljátok, esetleg riportoltok belőle, vagy mi történik?A módosítást nem a felhasználók fogják kezdeményezni, szóval nem számít, hogy ők milyen Excel verziót használnak
A fenti kérdésekre adott válaszok alapján lehet valamerre elindulni, de nem egy egyszerű történet.Kb. úgy lehet megcsinálni, hogy ha a Mesterfájlt módosítottad, akkor mondjuk egy makró letölti a felhőben lévő másolati fájlokat, szinkronba hozza a képleteket a mesterfájlal, majd visszamenti őket a helyükre.
Az is lehetőség, hogy letölteni az összes másolati fájlt a mesterfákllal egy gépre, ott lefut egy képlet szinkronizáló makró az összes fájlon, majd visszatölteni.
Vagy valami ilyesmi.
Imre
Szia!
Milyen Excel verziót használsz?
Ha Excel 365 van, akkor nemrég megjelent a UNIQUE (EGYEDI) függvény, ami ezt megcsinálja.Ha korábbi, akkor itt írtam a megoldásról:
https://excel-bazis.hu/tutorial/egyedi-ertekek-dinamikus-kivalogatasa-dinamikus-keplettelImre
Szia!
(Ez egy köszönés volt)Ezt konkrétan, amit szeretnél, esetleg makróval lehet megcsinálni.
Lehet eseménykezelő vagy gombbal indítható.
Miután beírtad a képletet a C1-be, elindul a makró, ami kiveszi a képletet a C1-ből és beteszi a Másik tábla C1-be.
Ha esetleg nem lenne a másik nyitva, akkor még ki is kell nyitnia.Tehát valójában ez a dolog natívan Excel-ben nem megoldható.
Kicsit kétlem, hogy ez lenne a feladat, inkább azt gondolom, hogy egy koncepció részeként gondoltál ilyet csinálni.
Ha esetleg felvázolnád, hogy mit is szeretnél pontosan, akkor talán születhet Exceles megoldás.
De képlet magától nem ugratható egyik helyről a másikra.Imre
Örülök én is.
Azt elfelejtetted közölni, hogy azh adatokat PowerQuery-vel hozod le az oldalról. De legalább látom, hogy honnan jön.
Itt egyértelmű, hogy a vessző ezres tagolást jelent.
A PowerQuery-ben kell/lehet megoldani a problémát.1. Az utolsó lépést(típus módosítva) törölni kell
2. Az összes oszlopban ami számokat tartalmaz, a vesszőt semmire kell cserélni
3. Az oszlopok típusát egész számra kell tenni (az elsőét is)
4. Bezárás és betöltésVan másik lehetőség is, de ez az egyszerűbb.
Imre
Imre
Nehezen tudom elképzelni, hogy egy oszlopban lévő értekek nem ugyanabban a mértékben vannak.
Tehát mondjuk ezerben megadva. Emiatt, ha egész számot látsz ott, akkor azt is ezerrel kell szorozni.Ha mégsem így lenne, ami komoly szakmai hiba, akkor egy HAHIBA és egy SZÖVEG.KERES függvénnyel megnézheted, hogy tartalmaz-e vesszőt, és csak akkor szorzod fel.
Imre
Hát, az attól függ, hogy hol tartasz most a makrókkal.
Ha teljesen kezdő vagy, és módszeresen tanulnál, akkor tudom ajánlani kezdetnek az éppen nemrég elkészült videó-tanfolyamot.
https://videotanfolyam.pentaschool.hu/Ez nem ad megoldást a problémádra, hanem bevezet a makrózás világába. A legelejébe.
A te igényedet a következőképpen lehet megcsinálni. Ez egy lehetséges út.
Mivel a beviteli lap nagyon helyesen táblázattá van alakítva, így igaz rá, hogy az A oszlop végére megadva egy új tételt, a táblázat kiterjed és a többi oszlop automatikusan előáll a képletek által.
Nem tudom hogy mi a valós munkameneted. Rekordonként töltöd fel az A oszlopot, vagy esetleg több tételt másolsz oda egyszerre?
Létezik a VBA-ban un. esemény kezelés (Event handling). Ezt használva megadható, hogy mi történjen, ha pl. egy adott munkalapon változás történik. Ha csak egy cellát változtatsz (új érték, törlés), akkor egy esemény generálódik. Ehhez tudsz készíteni saját eseménykezelőt, amivel megvizsgálod, hogy melyik oszlopban volt az esemény, és ha az A oszlopban volt, akkor átmásolod a táblázat B:G oszlopait az ajánlati lap megadott helyére értékként.Ha viszont több cellát másolsz be a beviteli lap A oszlopának végére pl. vágólapról, akkor annyi esemény keletkezik, ahány cella módosul, és a másolás is annyiszor történik meg. Ilyet még nem próbáltam, nem tudom mi lenne belőle. Mivel ugyanoda másol, és neked a keletkezett utolsó sorhoz tartozó eredmény kell, még akár működhet is. Mindig felülírja az előző másolást egy sorral hosszabb adattal. Elég bénán hangzik, de lehet, hogy működik.
Aztán lehetne félautomata
Beviszed az új adatot vagy adatokat a beviteli lap A oszlopába, majd egy gombbal vagy bill. kombinációval Te kezdeményezed az átmásolást.Bármelyik megoldáshoz meg kell tanulnod a másolás makrózását, a másolandó tartomány méretének automatikus megállapításával.
Most kipróbáltam, és táblázat hivatkozással működik a dolog, tehát nem kell méretet megállapítani.
Na mindegy, marad elég probléma, amivel meg kell küzdeni.
Szóval kezdőként is kivitelezhető, legfeljebb nem tudod pontosan,hogy mit csinálsz.Ehhez képest Office 365-ben egy sima tömbhivatkozással megoldható az egész.
Bocs, h ilyen hosszú lett,
Imre
Szia!
Ezt eseménykezelő makró nélkül csak Office 365-ben lehetne megcsinálni az új tömbfüggvényekkel dolgozó kalkulációs motorral.
2016-ban csak egy olyan sufni-tuning megoldást lehet csinálni, hogy az Ajánlat munkalapról simán áthivatkozol a Bevitel munkalap megfelelő cellájára (B1), majd ezt a hivatkozást lehúzod jó sokáig lefelé annyit, ami biztonsággal hosszabb annál, amennyi sor a Bevitel lapon lehetséges. Ezt megcsinálod minden oszloppal, amit másolni szeretnél.
Ahol még nincs adat a beviteli lapon, ott ugye üres lesz az eredmény az Ajánlati lapon..
Ahogy adat kerül a +1-dik sorba, az így automatikusan meg fog jelenni az Ajánlati lapon is.Off megjegyzés
Ha a Beviteli lapot te csináltad, akkor nem igazán tartozol a kezdő Excelesek közé.
Elég sajátságos, hogy minden képletet elnevezve használnak, nem is láttam még ilyet.Imre
Szia!
Próbálom értelmezni a kérdésedet, mert azt sejtem, hogy nem egy sima másolást szeretnél.
– Talán esetleg azt, hogy ha a forrás lapon változik valami, az változzon acél lapon?
Talán nem csak ezt, mert ez egy sima hivatkozással megoldható.– Esetleg azt, hogy ha új adat kerül a forrás lapra, az jelenjen meg a cél lapon is automatikusan?
Kicsit pontosítsd az igényt, írj le esteket, és esetleg tölts fel minta fájlt.
Hasznos lenne tudni, hogy milyen Excel verzióval dolgozol.
Imre
Engedd, hogy a vessző tizedes legyen.
Mindegyiket szorozd fel 1000-rel és utána add össze.Imre
Szia!
Jól gondolom, hogy a végső formuláidban 11-szeres SZUMHATÖBB van összeadva? Minden lapra egy SZUMHATÖBB?
Ha én csinálnám, akkor a 11 lap adatait egy közös fejléccel egy lapra tenném egymás után
Dinamikus módon ez PowerQuery-vel megoldható.
Majd ebből készítenék riportokat. ‘ nap, 7 nap, előző hónap.De mivel Te más sokat dolgoztál a saját verziódon, próbálok ezen az úton segíteni.
Megoldható SZUMHATÖBB-el, csak ismerni kell hozzá a HÓNAP.UTOLSÓ.NAP (EOMONTH) függvényt.
Ennek első paramétere egy dátum, a te esetedben lehet mindig a MA().
Második paramétere, hogy az első paraméterben adott dátumhoz tartozó hónaphoz képest hány hónappal korábbi vagy későbbi hónap utolsó napját adja vissza.Pédákkal:
Ma Május 10 van.Az aktuális hónap utolsó napja (nulla az offszet)
=HÓNAP.UTOLSÓ.NAP(MA();0) ---> 2020.05.31
Előző hónap utolsó napja
=HÓNAP.UTOLSÓ.NAP(MA();-1) ---> 2020.04.30
Előző hónap első napja = két hónappal korábbi hónap utolsó napja +1
=HÓNAP.UTOLSÓ.NAP(MA();-2)+1 ---> 2020.04.01
SZUMHATÖBB függvénybe varázsolva
Ugyebár az a feltétel, hogy a dátum >= az előző hónap első napjánál, és <= az előző hónap utolsó napjánál. Generáltam egy kis minta táblát, ahol az A oszlopban vannak a dátumok, B és C oszlopbna tulajdonságok, D oszlopban az összegzendő értékek. A példában csak a dátumra adok feltételt, hogy az előző hónap legyen=SZUMHATÖBB(D2:D153;A2:A153;">="&HÓNAP.UTOLSÓ.NAP(MA();-2)+1;A2:A153;"<="&HÓNAP.UTOLSÓ.NAP(MA();-1))
Ellenőriztem PIVOT táblával, stimmel.
Csatolom az Excel-t
Imre
Attachments:
You must be logged in to view attached files.Szia!
Ha napira tudtál szűrni, akkor feltételezem, hogy van egy olyan oszlopod, ahol dátumok vannak.
Ha ez igaz, akkor a 11 kritérium alapján már szűrt adathalmazból a dátum alapján csoportosítva egy sima PIVOT tábla megoldja a problémát.Megoldja különben hetire, havira, negyedévre is.
Imre
Ismét örülünk.
Különben az összetettséget látva tarvazési sznten kellene hozzányűlni, hogy a végén a képlet ne legyen ennyire bonyolult.
Ennek átgondolására most nem vállalkozom.I
-
A hozzászólás módosításra került: 4 years, 8 months telt el-
-
SzerzőBejegyzés