- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Samsung Galaxy A34 - plus size modell
- Új térképfunkciók érkeztek az Amazfit T-Rex 3-ba
- Google Pixel topik
- One mobilszolgáltatások
- Nem várt platformon a OnePlus Nord 5
- Google Pixel 9 Pro XL - hét szűk esztendő
- Milyen okostelefont vegyek?
- Elkészült és telepíthető az Android 16
- Xiaomi 14T Pro - teljes a család?
-
Mobilarena
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Fferi50
Topikgazda
Szia!
"=SUMIF($D$2:$D$15000;$D35087;$H$2:$H$15000)"
Kétlem, hogy ez lenne ott a képlet. A tartománycím végéről biztosan lemaradt egy 0, (a makró szerint 150000). Ez valószínűleg elírás itt.
Az utolsó sor pedig biztosan nem a 35087. Hogyan állapítod meg az usor változó értékét?
Ha ezt a képletet:=SUMIF($D$2:$D$150000;$D2;$H$2:$H$150000)
beírod az N2 cellába, majd lehúzod (bár ha táblázattá alakítottad, elvileg automatikusan lehúzódik), akkor látod a helyes képletet az utolsó sorban. Ezután csak azt kell másolnod tovább lejjebb.
Üdv. -
Fferi50
Topikgazda
Szia!
1.Milyen Excel verziód van? O365-ben van SZŰRŐ függvény. Korábbi verziókban pedig Speciális/irányított szűrő.
De nem lenne haszontalan látni egy példát - miből mit szeretnél elérni.
2. "az adott kategória 3 lesz, de nem alacsony, hanem a közepes csoportba fog tartozni."
Ez nyilván egy másik ismérv szerint lesz így. Erre az esetre is létre kell hoznod egy feltételes formázás szabályt.
Üdv. -
Nem igazán értem a logikát, hisz így csak az A oszlop másolata jön létre, de sebaj.
képlet
=HA(B2="igen";A2;HA(ÉS(B2="nem";C2="igen");A2;A2))
Így még érteném a logikát
=HA(B2="igen";"A";HA(ÉS(B2="nem";C2="igen");"B";"OK"))
vagy így
=HA(B2="igen";"Súlyos hiba";HA(ÉS(B2="nem";C2="igen");"Kevésbé súlyos hiba";"Nincs hiba"))
Majd eldöntöd...
-
Ez remekül sikerült!
Az IFS (HAELSŐIGAZ) függvény az első igaz feltétel teljesítése után nem vizsgálódik tovább, Te meg teljesen kizártad azt a lehetőséget, hogy a
(CB6+CC6+CD6)=0
feltételig eljusson. Ahhoz, hogy egyáltalán "valameddig" eljusson, ahhoz az kell, hogy CB6 és CC6 cellákban, csak 0 vagy kisebb (negatív) szám kerülhetAz
(CB6+CC6+CD6)=0
feltétel azért nem fog sosem teljesülni, mert
CB6 és CC6 0 értéke esetén aCD6=0;"Fully Met"
lép életbe (2 nullához csak 0-t lehet adni, hogy 0 legyen)
CB6 és CC6 negatív értéke esetén aCD6>0;"Fully Met"
lép életbe (2 negatív értékhez csak pozitív (1-nél nagyobb) értéket lehet adni, hogy 0 legyen)Szóval ezt a képletet át kell írni, mert ez az igaz öngól...
Ha ennél a módszernél maradsz, akkor "visszafele" kell gondolkodni, azaz az elején megvizsgálni, hogy a CB6/CC6/CD6 cellákban mindegyikében van-e szám (DARAB függvény), ha igen, akkor már lehet vizsgálni az(CB6+CC6+CD6)=0
feltételt és csak azt követően a többit. -
föccer
nagyúr
Pontosan nem értem az adatfelépítést, de Office 2021-ben vagy O365-ben kifejezetten könnyen, tömbfüggvényekkel.
Ha Legördíthető listák vannak, azt is lehet dinamikusan adatokkal feltölteni.
Konkért segítséget akkor tudok adni, ha látom a táblázat felépítését.
Üdv, föccer
-
Mutt
senior tag
Szia,
Excel 2010-től van Power Pivot, amivel meg lehet csinálni.
A mintámban van 3 oszlop: termék, hét, jelölés (amiben egy X van amikor szükséges).Lépések:
1. Pivot beszúrása ablakban válaszd ki alul hogy adatmodelbe töltse be az adatokat.2. A Pivot tervezőnél jobb klikk a tábla nevén (az én példámban Range) és válaszd ki az új mérték hozzáadaása opciót.
3. A felugró ablakban egy DAX képletet kell megadni. Ez az én példám alapján: =if(ISFILTERED(Range[Termék]);CONCATENATEX(CALCULATETABLE(VALUES(Range[Hetek]);NOT(ISBLANK(Range[Jelölés])));Range[Hetek];", ");"")
Kapcsos zárójelben az oszlopok nevei vannak.
A lényeg belül a CALCULATETABLE, ami egy olyan eredménytáblát állít elő hogy csak azon sorokat tartja meg ahol nem üres a [Jelölés] oszlop. Ha te ezt máshogy jelzed akkor ezen kell módosítani.
A CONCATENATEX összefűzi egymás a jelzett heteket (ha több lenne akkor vesszővel elválasztja őket).
Az egész egy IF-be van téve, hogy a végén a totál soroknál ne legyen felsorolva minden jelölt hét.4. Ezt az új értéket lehet a pivotba húzni. Az eredmény a példámon középen látszik.
A kimutatás rendes Pivotként műkődik, lehet a megszokott dolgokat csinálni. A DAX képlet a memóriában megcsinálja a számításokat minden frissítéskor.
üdv
-
Fferi50
Topikgazda
Szia!
A képletet módosítsd a HAHIBA függvény alkalmazásával:=HAHIBA(INDEX($A$2:$G$2;HOL.VAN("x";INDEX($A$4:$G$9;HOL.VAN($I4;$A$4:$A$9;0);0);0));"")
Ennek eredményeként az adott termék mellett "üres" cella látható, amelyet kiszűrhetsz. A "" helyett saját szöveget is írhatsz, a lényeg, hogy tudd, ezeket a sorokat kell elrejteni a szűrővel.
A kép természetesen azért készült így, hogy a képlet összetevői láthatóak legyenek, a saját elrendezésednek megfelelően ez alapján tudod módosítani.
Üdv. -
ny.janos
tag
Szia!
Makróval sok minden lehetséges, így értelemszerűen erre is tudnak biztosan megoldást írni azok, akik értenek a mekróhoz.
Ugyanakkor sokszor elhangzott már itt a fórumban, hogy a színnel történő kódolás nem egy excel logikára felépített megoldás, ezért célszerű az ilyen megoldásokat kerülni. Ugyanis ha a színezés alapján lenne szükséged valamilyen műveletre, akkor az csak autoszűrővel és részösszeg/összesít függvényekkel illetve makróval oldható csak meg. Több kategóriából adatokat nyerni pedig értelemszerűen csak makróval lehet, vagy sokszor kell az autoszűrőn módosítani.Fentiek miatt célszerű megoldás lehet, hogy az eddigi táblázataidat átalakítod oly módon, hogy hozzáadsz egy új oszlopot a tábládhoz és a valamilyen kódokat (számok, betűk, konkrét szövegek stb.) rendelsz mind egyes színhez. Ha a színezést továbbra is szeretnéd látni, akkor feltételes formázásban rendeld a színezést az új oszlopként hozzáadott kódokhoz. Ezt követően a manuális színezés eltávolítható.
A fájlaid adatainak összefűzésére pedig az Adatok - adatok beolvasása - fájlból - mappából menüpontot (korábbi excel verziókban Power Query kiegészítőként volt telepíthető) javaslom. Ezzel az összes fájlod adataiból egy összesített adattáblát fogsz kapni (a feltételes formázást ebben is megadhatod).
-
lappy
őstag
meg lehet oldani ha függvénnyel pl.
amikor kiválasztod hogy "A" műszak akkor veszi a listából az első, második, sokadik elemet,
ha "B" akkor így továbbegy másik megoldás
-
-
Fferi50
Topikgazda
Szia!
Elképzelhető, hogy "megbuggyant" az Excel, mert ez a változó a VBA könyvtár része.
Próbáld újratelepíteni az Excelt.
Esetleg a másik gépen rendben lefutó munkafüzetet másold át ide. Ha akkor is jelentkezik, az Excel a hibás, ha nem, akkor a nálad levő verzió a bűnös.
Üdv. -
Fferi50
Topikgazda
Szia!
Zéróosztó amiatt lehet, mert a Darabteli függvényed 0 értéket ad vissza. Mivel abszolút címzést használsz, ez csak úgy fordulhat elő, ha az M oszlopban levő összefűzött érték nem felel meg a C és az F oszlop szóközzel történt összefűzésének. Ezért a Zéróosztó sorban nézd meg, hogy az összefűzés rendben van-e. Megegyezik-e az értéke a sorban levő két cella összefűzésével.
Üdv.
-
Mutt
senior tag
Szia,
1.
Lehet egy lépésközöd, ami alapján szeretnéd szétszedni a két szám közötti tartományt.
Ez esetben a = induló szám + lépésköz * lépésszám függvény -el tudsz számolni egy köztes értéket.pl. a harmadik értéked = 10 + 0,1 *3 = 10,3
A lépészámban a =SOROK(fixtartomány:futótartomány) tud segíteni.
pl. a = SOROK($C$2:$C4) 3-at ad eredményül.2.
Ha mindig csak adott számú köztes elemet akarsz (pl. 10 egyenlő részre osztani),
akkor a lépésközöd = (végső - induló)/lépésszám
A többi lépés ugyanaz mint előbb.üdv
-
föccer
nagyúr
a gyök alatti rész negatív érték lett, és emiatt a gyökvonás nem értelmezhető
Értelmezhető az, csak az excel nem kezeli. Mondjuk azért nem is elvárható tőle, hogy kezelje a komplex számokat. Azért egy tisztességes matematikai rendszernek ez már nem okoz gondot.
Bocs az offért, nem bírtam megállni. :d
üdv, föccer
-
Fferi50
Topikgazda
Szia!
Nem vigasz tudom, de nálam 2016 alatt bemásolva nem okoz hibát.
Javaslom, nézd meg a képletvizsgálóval, illetve az elődök bekapcsolásával.
Talán próbáld meg egy másik cellába átmásolni csak a kifejezést. Elképzelhető, hogy valamilyen cella formázást miatt problémázik.Üdv.
-
Delila_1
veterán
Írtam egy függvényt rá. Az első paraméter egy olyan cellának a címe, ami a kiválasztott háttérszínt tartalmazza, a második pedig az átlagolandó tartomány.
Function AtlagColor(mintacella As Range, tartomany As Range)
Dim CV As Object, atlag, db As Long
For Each CV In tartomany
If CV.Interior.Color = mintacella.Interior.Color Then
atlag = atlag + CV: db = db + 1
End If
Next
AtlagColor = atlag / db
End Function -
Fferi50
Topikgazda
Szia!
Ha van bármilyen szabályosság a színezésben, akkor az feltételes formázással megoldható: a formázandó cellák kijelölése képlettel pontban.
Másrészt, ha képlettel meg lehet oldani a feltételes formázást, ugyanazzal, ugyanazokkal a képletekkel az átlagszámítást is meg lehet oldani.
Szerencsés lenne, ha tennél fel mintát, illetve megmutatnád, milyen logika változtatja a színeket.
(Persze, ha nincs logika, az sem baj - akkor viszont valóban makró játszik csak. A Range.DisplayFormat.Interior.Color tulajdonság megmutatja a cella aktuális színét.)Üdv.
-
Delila_1
veterán
Túl hosszú ahhoz, hogy végignézzem.
A kérdés felvetésekor összedobtam egy makrót, ez célratörőbbnek tűnik.A makróban a B2 cella bal felső széléhez illesztem az új logót. Csillagokkal jeleztem, melyik sorokban kell a kódot a saját adataidhoz igazítani.
Sub Kepcsere()
Dim utvonal As String, FN, lap As Integer
Application.DisplayAlerts = False
utvonal = "C:\Tmp\" 'Excel fájlok útvonala *********
ChDir utvonal
FN = Dir(utvonal & "*.xls*")
Do While FN <> ""
Workbooks.Open utvonal & FN
For lap = 1 To Worksheets.Count
Sheets(lap).Select
ActiveSheet.DrawingObjects.Delete
Range("B2").Select 'Melyik cellához igazítsa a logót ***********
ActiveSheet.Pictures.Insert("D:\Logó_útvonala\Logo.jpg").Select 'Ezt is írd át *********
Selection.ShapeRange.LockAspectRatio = msoTrue
Selection.ShapeRange.Height = 141.75 'Logó magassága '*******
Selection.ShapeRange.Width = 119.25 'Logó szélessége '*******
Next
ActiveWindow.Save
ActiveWindow.Close
FN = Dir()
Loop
Application.DisplayAlerts = True
End Sub -
Delila_1
veterán
Az egyes fájlokban több lapon is szerepel a lecserélendő kép?
Több kép is van 1-1 lapon? Ez azért fontos, mert nem tartom valószínűnek, hogy a több 100 fájlban azonos megnevezése van a beszúrt képnek – valószínűleg régi logónak –, így esetleg nem lehet fixen hivatkozni rá.
ActiveSheet.DrawingObjects.Delete
A fenti kóddal az aktív lapon lévő összes képet 1 lépésben le lehet törölni. Ha csak 1 db logó van a lapon, ez alkalmazható.
Egy ciklussal meg kell nyitni a fájlokat. Ha több lapon is szerepel a cserélendő kép, egy másik ciklussal a lapokat kell sorba venni, törölni a régi képet, majd meghatározott helyre beszúrni az újat, beállítani a méretét, végül menteni és bezárni a behívott fájlt.
-
Fferi50
Topikgazda
Szia!
" Első körben arra gondoltam, hogy a keresések eredményeképpen kapott kimutatás statikus, tehát ahol az egyik helyen a liszt szerepelne, a másikon pl. az élesztő, és keveredhetnek az adatok."
Ez csak akkor lehet igaz, ha direkt cellákra hivatkozol,ha keresőfüggvényt használsz, akkor ilyen nem fordulhat elő.
Kereszttábla pl.
1. sorban v. oszlopban az alapanyagok sorolva
A többi sorban/oszlopban receptnév és a megfelelő alapanyagnál a mennyiség.sor/oszlop felcserélhető, amelyik kényelmesebb, azt lehet használni. De úgy érzem, Delila ilyesmit javasolt neked.
Üdv.
-
Delila_1
veterán
A HA(HIBÁS(...) függvénynél mindhárom oszlopra üres stringet adj meg. A Munka1 lap E2:H2 címsorába tegyél autoszűrőt, akkor az F; G; vagy H oszlop bármelyikét szűrheted úgy, hogy az üreseket kihagyod, és máris egymás alatt vannak a felhasználandó alapanyagok.
Érdemes a Munka2 lapra olyan mértékegységgel felvinni az összetevőket, amilyennel a felszorzás után szeretnéd látni. Pl. ha 1 termékhez x gramm cucc kell, és várhatóan 1000 db-ot gyártasz, akkor kg-ban add meg a segédtáblában.
A Munka1 E oszlopába folyamatosan vidd fel az összes termék alapanyagait. 2007-es verzióban használhatod az Ismétlődések eltávolítása funkciót, régebbiben egy rendezés után kigyomlálhatod a duplikációkat. Vagy az =darabteli(E:E;E3) képlettel viszel fel ideiglenesen egy oszlopot, szűröd az 1-nél nagyobbakra, majd törlöd a szűrt sorokat.
-
Fferi50
Topikgazda
Szia!
Az Excelben működik a külső fájlra hivatkozás is, nemcsak a másik munkalapra hivatkozás.
Egyszer persze meg kellene csinálni azt a mutatót (hivatkozás könyvtárat), amelyik tartalmazza, hogy melyik recept hol van.
Ezután keresőfüggvényekkel szépen megoldható a feladat szerintem.
"a receptek nem azonos formázásúak, tehát ami komponens az egyikben benne van, az hiányzik a másikból és viszont."
Ezt nem is értem, mi köze a formázásnak a tartalomhoz - hiszen a komponensek száma nyilván attól függ, mit szeretnél gyártani. Igazából azt sem látom kivitelezhetetlennek, hogy a receptek és az alapanyagok "kereszttábla" formájában legyenek tárolva.Egy minta biztosan sokat segítene abban, hogy további tanácsokat adjunk.
Üdv.
-
Delila_1
veterán
Egyszerűbb összeállítani, mint elmesélni a módját. Azért van a füzetben némi magyarázat.
-
poffsoft
veterán
=HA(A3="";"";FKERES($A3;Munka1!$A:$ID;233;HAMIS))
Mivel ha a 4. argumentum IGAZ vagy hiányzik, csak közelítő értéket talál, nem pontos egyezést.
Amúgy a hol.van és index fv párosa elegánsabb lenne:FKERES($A3;Munka1!$A:$ID;233;HAMIS))
helyettINDEX(Munka1!HY5:HY170;HOL.VAN($A3;Munka1!A5:A170;0))
-
Delila_1
veterán
Kiegészítettem a 2 lapot az új oszlopokkal és képletekkel.
Nem mondom, hogy egyszerűen átlátható, mert az INDEX függvénynek a hivatkozásos változatát sokkal ritkábban alkalmazzuk, mint a tömböset.
Újabb anyagok, típusok bevitelénél a H és I oszlop képleteit bővíteni kell.Itt találod meg a füzetet.
-
Delila_1
veterán
Azoknál a celláknál, ahol engedélyezed a beírást, a Cellaformázás ablak Védelem fülén vedd ki a pipát a Zárolt négyzetből. Mikor minddel kész vagy, védd le a lapot, mert csak akkor lép életbe a védelem.
A lapfülön jobb klikk, Lapvédelem. A Minden felhasználónak engedélyezve felsorolásban a Zárolt cellák kijelölése elől vedd ki a pipát. Az OK lenyomása után adhatsz jelszót a védelemhez, de nem kötelező.
-
Delila_1
veterán
Szerintem meghülyíted a folytonos rákérdezéssel a felhasználót. Inkább vegyél fel egy új oszlopot, ahova újra be kell vinni az adatot, majd feltételes formázással színezd ki a két cellát, ha nem egyformák (kép jobb oldalán).
A másik kérdésre: a D1 cella tartalmazza a normát, az F1 a max. eltérést. Ha a bevitt érték a megadott tűrés alatt-, ill. fölött van, a háttérszín jelez (kép bal oldalán).
Egy ábrára tettem a két kérdésnek feltételes formázással való megoldását, a képletek a megjegyzésekben láthatóak.
-
szatocs1981
aktív tag
Az elsö problémára (ezt az adott fülhöz kell bemásolni):
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 8 Then 'H szlopot ha módosítod
ertek = InputBox("Tuti ennyit akarsz?", "A nagy kérdés")
If ertek <> CStr(Cells(Target.Row, 8).Value) Then
MsgBox ("Elcseszted!")
End If
End If
End Sub -
Traxx
őstag
Sziasztok!
Az előző hozzászólásomhoz kapcsolódóan szeretnék még egy kis iránymutatást kérni tőletek
szatocs1981 kolléga adott segítséget, de nem nagyon sikerül működésre bírnom, illetve kaptam új infókat is. Emiatt, és a jobb szemléltethetőség miatt feltenném újra a kérdésemet
Van egy " gyártási nyilvántartó" táblázatom, amely így néz ki:
Itt a Legyártott darab oszlopa lenne az érdekes, ami úgy működne, hogy minden nap beírnánk azt, hol tart a gyártás. Itt azt szeretném elkerülni, hogy "hülyeséget" írjunk be véletlenül, megborítva ezzel mindent. Tehát két dolgot szeretnék elérni (vagy-vagy alapon, de lehet mindkettőnek egyszerre is lenne értelme, ha azzal ki tudok minden véletlen elírást küszöbölni, persze ha ez a program lehetőségeiben benne van
) :
- Az egyik az, hogy amikor beviszem az adatokat a H oszlop celláiba, akkor az excel kérdezzen rá, hogy tuti jó-e, és még egyszer be kelljen írni (ez lenne a jobb módszer). Ha pedig a két beírt szám nem egyezik, akkor pampogjon, hogy elcseszted
Ha pedig igen, csak akkor kerüljön véglegesen rögzítésre a cellában.
- A másik (ez vetődött fel ma), hogy minden terméknek van normája, és ha pl. plusz-mínusz x%-kal többet írok be, mint az addigi gyártás+norma, akkor szóljon, hogy biztos-e. Ezt megpróbáltam az Adatok - Érvényesítés menüpont alatt megoldani, de nem igazán ment. Létrehoztam 3 segédoszlopot, a J-ben a H-ban megjelenő értékeket jelenítettem meg, csak simán =$H$3 formában, a következő két oszlopba pedig betettem a norma plusz-mínusz x%-os mértékét. Az érvényesítés menüpontban pedig ezekkel játszottam: a minimum és a maximum értékekhez ezeket tettem be, plusz az aktuális értéket, a Hibajelzés fül alá pedig egy üzenetet, hogy biztos így akarom-e? De így nem ment a dolog - gondolom azért, mert ha a H oszlopos cellákba beírtam az új értéket, akkor J-ben is megváltozott
Olyan megoldást pedig nem találtam, hogy ezt kivédjem...
Mind a két megoldás jó és elegáns lenne szerintem, ha működne, de nagyon nem jutok zöld ágra. Még annyit szeretnék elmondani, hogy ennek 2 munkalapon kellene működnie, de ezek felépítése teljesen megegyezik, pár sorral van csak több az egyikben, de a képletek, stb. ugyanazok.
Tudnátok segíteni?
Köszönöm szépen!
-
szatocs1981
aktív tag
Makróval, nagyjából így. Nem teszteltem!
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = Cells(1, 1) Then 'A1-es cellát ha módosítod
ertek = inputbox("Tuti ennyit akarsz?")
If ertek <> Cells(1,1).value then
MsgBox("Nem egyezik!")
End If
end If
End Sub -
poffsoft
veterán
ettől féltem, hogy a forráslap törlődik.
megoldás1:
a rendelés azonosító folyamatos?
akkor törlés előtt a rendeléshez kötni a gyártás adatokat, minden új nap előtt makróval kigyűjteni az adatokat.megoldás2: új napon nem törlöd a tegnapit, hanem új lapot hozol létre, mondjuk ilyen névvel: DÁTUM-gyartas
20150723-gyartas
20150724-gyartas
stb.erre màr képletekkel hivatkozhatsz bárhonnan...
-
poffsoft
veterán
Akkor javaslom az fkeressel két újabb oszlopot felvenni (mondjuk a "K"-ba), az eredeti képlettel:
=FKERES(A4;Gyártás1!$A$4:$A$268;1;HAMIS)>0
"L"-be:
=FKERES(A4;Gyártás2!$A$4:$A$268;1;HAMIS)>0a feltételes formázáshoz pedig :
=VAGY(K4;L4)Amúgy sokkal egyszerűbb lenne, ha elküldenéd a táblázatodat...
A feltételes formázást pedig akkor úgy add meg, hogy kijelölöd a teljes B4:B268 tartományt, és úgy a feltételes formázás a fentiek szerint.
A 3 feltételes formázás ne zavarjon szerintem:
Ha gyártódik, a B4 cella (oszlop) zöldül, ha késik, az E4 cella (oszlop) pirul, stb, stb.A feltételeket pedig több segédoszlopba kombinálhatod, a feltételes formázás pedig csak az adott oszlop IGAZ/HAMIS értékét figyelje...
(vagyis pl. a =VAGY(K4;L4) menjen az M4-be, a feltételes formázás pedig :
=M4
Delila képlete is mehet segédoszlopba pl.A státusokra is bevezethetsz akár plusz oszlopokat(ha a határidő-dátum()>14, akkor az N4 zöld, ha határidő-dátum()>10és <14 akkor O4 citrom, ha 5-10, akkor P4 narancs, stb, stb )
Az üres figyelése mellett megoldás lehet, ha nem a kitöltést színezed pirosra, hanem a szöveget. Üres cellánál nincs mit színeznie a feltételes formázásnak -
poffsoft
veterán
jól sejted, feltételes formázás.
B4 cellára állva, feltéve, hogy a J4-ben van a dátum:
Új szabály/ formázandó cellák kijelölése képlettel.=DARAB(J4)=1
A feltételes formázásnál az érvényességet pedig átírod :
=$B$4:$B$268a másodikra hasonló módon az FKERES-t használnám:
A4 cellára állva:
=FKERES(A4;Gyártás!$A$4:$A$268;1;HAMIS)>0A feltételes formázásnál az érvényességet pedig átírod :
=$A$4:$A$268De a feltételes formázást és képleteket használva pl. a DÁTUM() fv. segítségével fokozatosan színezheted pl. az adott megrendelés "határidő" celláját is, ahogy közeledünk a határidőhöz (és a "Kiszállítva" oszlop üres...)
-
Traxx
őstag
Még két dologban szeretnék segítséget kérni. A 2. képen szereplő megrendelési listába betennék még egy "kiszállítva" oszlopot is. Lehetséges olyat csinálni, hogy ha
- kiszállításra kerül a termék, vagyis a megfelelő cellába beírásra kerül a szállítás dátuma, pl. az adott terméket tartalmazó cella színe megváltozzon? Feltételes formázás lenne itt a kulcs, ha jól sejtem, de nem nagyon tudom, milyen képlet lenne ide a megfelelő.- A másik, ami szerintem bonyolultabb: ha a termék gyártásban van (tehát szerepel az üzemrész gépeit tartalmazó, 3. képen lévő listán az adott rendelés), akkor képes ezt az excel szintén valamilyen színkóddal jelezni?
Köszönöm szépen ismét a segítséget!
-
Delila_1
veterán
Mikor átmásoltad Excelbe, a dátumot tartalmazó celláknak adj feltételes formázást.
Vegyük, hogy a dátumaid a B oszlopba kerültek, és címsort feltételezve az első dátumod a B2 cellában van. Erre a cellára kell adnod a formázást, aminek a képlete =B2<MA(). Megadod a feltűnő színt, majd a B oszlop többi cellájára átmásolod a formátumot a formátumfestő ecsettel.
Szerk.:
Ez a módszer a dátum celláját formázza, de ha az A2 feltételes formázásához az =$B2<MA() képletet viszed be, akkor az A oszlopban lévő mérőeszköz cellájának a formátuma változik a dátum függvényében. -
Pont most linkelte Mutt a trükkös megoldást, kár, hogy nem töltötte le a teljes táblázatot.
Esetedben ez annyit tesz, hogy minden egyes sorszámozott lap esetén egyéni "trükk" kell, ergó többet fogsz ezzel eltölteni, mint hogy a progi a kezed alá dolgozzon (mert így nem lehet egységes eljárást készíteni, mindhez külön kell lényegében) -
Mutt
senior tag
Hello,
lappy megoldása tökéletes. Az összes kereső függvénnyel (FKERES, HOL.VAN) az a gond, hogy csak 1 találatot add vissza, neked viszont akár több is kellene, ezt megoldani csak trükkösen lehet.
B90-be menjen ez:
=INDEX($A$57:$N$80;HOL.VAN($E$84;$A$57:$A$80;0);4)
B91-be ez:
=INDEX($A$57:$N$80;HOL.VAN($E$84;$A$57:$A$80;0)+1;4)
D95-be ez:
=INDEX($A$57:$N$80;HOL.VAN($E$84;$A$57:$A$80;0);9)
D96-ba ez:
=INDEX($A$57:$N$80;HOL.VAN($E$84;$A$57:$A$80;0)+1;9)Az INDEX helyett akár az ELTOLÁS függvény is használható.
Alternatív megoldás az INDIREKT függvénnyel.
B90:
=INDIREKT("D"&VÁLASZT(HELYETTE($E$84;".";"");57;59;61;63;65;67;69;71;73;75;77;79))
B91:
=INDIREKT("D"&VÁLASZT(HELYETTE($E$84;".";"");57;59;61;63;65;67;69;71;73;75;77;79)+1)
D95:
=INDIREKT("I"&VÁLASZT(HELYETTE($E$84;".";"");57;59;61;63;65;67;69;71;73;75;77;79))
D96:
=INDIREKT("I"&VÁLASZT(HELYETTE($E$84;".";"");57;59;61;63;65;67;69;71;73;75;77;79)+1)üdv.
-
Fel tudnád tölteni egy fájlmegosztóra a táblázatot (ha vannak nem publikus adatok, azokat írd át benne előtte), mert akkor ránéznék. (Délutánra csak Windows update-k vannak, azok meg csak mennek töltenek, telepítenek, szóval most van egy kis időm ezzel foglalkozni)
Ha direktbe csak nekem küldenéd, akkor privátban megadtam azt az email címem, amire küldheted.UI: Ez a struktúra nem alkalmas a feladatra vagy csak igen nehézkesen, ha időmbe bele fog férni, akkor teljesen átalakítom használhatóvá, csak ahhoz a teljes doksira van szükségem, hogy mindent lássak benne.
-
Traxx
őstag
Elnézést a sok posztért, de leltem még egy anomáliát, ami talán valakit közelebb vihet a megoldáshoz...én teljesen sötétben tapogatózok már
Itt már vegyesen hozza az értékeket...de nem fér a fejembe, hogy miért volt tökéletes máskor, pl. itt, a 6. hónapban? Minden képlet teljesen ugyanaz...és valami mégsem perfekt...
-
"Amint látszik, az első javítást kiválóan hozza is, de a másodikat (a 60. sorban lévőt) valamiért nem"
Cellaegyesítésnél(B oszlopban ez van) ez nem alkalmazható eljárás
(Ha ráállsz a B59-es cellára, az az, ami egyesítve van, viszont csak az első javítás van vele azonos sorban(59.), a második javítás már a 60.-ban)"A másik gondom: a 9. hónap után valamiért az egész nem akar működni
0 értéket hoz mind az elvégzett munkánál, mind az alkatrésznél."
A képed alapján 10. hónaptól teljesen üres, nincsenek adatok, ergo 0-t ad vissza. -
Delila_1
veterán
Makróval megoldható.
Sub Nyomtat()
Dim lap%
For lap% = 1 To Worksheets.Count
Sheets(lap%).Select
ActiveSheet.PageSetup.PrintArea = "$A$1:$H$35"
ActiveSheet.PageSetup.Orientation = xlPortrait
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
ActiveSheet.PageSetup.PrintArea = "$A$36:$M$62"
ActiveSheet.PageSetup.Orientation = xlLandscape
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Next
End SubA két helyen az ActiveSheet.PageSetup.PrintArea = kezdetű sorokban a saját nyomtatandó területeidet add meg.
-
lappy
őstag
Szia!
Elég nagy butaságot írtál le! Mivel a leírás alatti cellákba is egy globális listát használsz, ha jól tudom!
NA most ha megint létrehozol egy listát a kódok munkalapon akkor arra tudsz hivatkozni bármelyik munkalapon! pl: lista az érvényesítésnél meg csak annyi hogy lista kiválasztás és a forráshoz pedig =lista
és így működnie kell! -
Erre mondják, hogy csalamádé.
Elég csak benézned a Névkezelőbe és látod, 5-6 (vagy több) tartománynak ugyanaz a neve. [link]
Másik tipikus hiba, hogy az érvényesítési lista forrásában a cellákra abszolút hivatkozással kell hivatkozni, azaz a oszlop- és sorazonosító elé is kell a dollár jel, pl INDIREKT($A$1)Szerintem ugorja neki még egyszer, egyértelmű és ne 1-2 betűs tartományneveket használj. (Ha a rosszak ki vannak törölve és újra át vannak nevezve, akkor működnek a listák)
-
lappy
őstag
Szia!
A következőket tettem és MŰKÖDIK!
1. Töröld az összes tartománynevet!!!
2. Én átrendeztem a Kódok lapot függőleges nézetre( egymás alatt vannak a lista elemei)
Bár lehet a 2. lépés nem kell!
3. Újra elneveztem a tartományokat!
4. Minden működik!
Szerintem a névkezelőben sok felesleges tartományelnevezés került bele! Nekem csak 6, ill. 7 (kódok tartománynév) van!
Lehet az okozta a gondot! -
lappy
őstag
Szia!
Ha átmásolod egy másik munkalapra akkor már nem tudod ugyanolyan névvel elmenteni az a listádat! mert egy globális név lesz!! (ill. lehet csak) amire bárhol hivatkozhatsz!
Nem tudom mitől nem működik neked ez a lista más munkalapon!
Az érvényesítésnél a forrásba pl.: beírod =jelleg (ilyenkor fog feljönni hogy L, M, ME, stb)
és minden egyes jelleghez tartozó megnevezésnél az érvényesítési forrásba pedig beírod pl.:
munka1 munkalapon =indirekt(E8)
munka2 munkalapon =indirekt(F8)
munka3 munkalapon =indirekt(G8)
ahol az E8, F8, G8 celláknál tudod kiválasztani a jelleget! -
-
"Ezt a dinamikus tartományt egyébként a 2003-as excel is tudja?"
Igen."...magyarán azt mondod, hogy azért van az egyiken, és nincs a többin, mert statikus a tartomány dinamikus helyett?"
Nem, mivel a névvel ellátott tartományok globálisak, azaz bármely munkalapról elérhetőek. Ebből következően a "Ez pedig, számomra rejtélyes okból, CSAK az első munkalapon működik - és nem csupán az, hogy új elemet szúrhassak be a listába, hanem maga a legördülés is." kérdésedre nem tudom a választ sajnos. -
Egyszerűség kedvéért névvel ellátott tartományok lesz a példában, pl UBUL.
Vannak statikus és dinamikus tartományok, ezeket az Excel(típustól függetlenül) dinamikusan tudja frissíteni, adott esetben.Statikus tartomány az, aminek van "jól behatárolt" eleje és vége, pl $A$1:$A$10. Ha az A11-be írnál valamit, az nem kerül be az UBUL tartományba, Excel sem fogja dinamikusan bővíteni, manuálisan kell kibővítened az UBUL tartományát $A$1:$A$11-re.
Ha viszont az A10 cellának megfelelő sorban van a kurzor és beszúrsz egy sort, akkor azt az Excel dinamikusan frissíti, azaz manuális beavatkozás nélkül, az UBUL tartomány forrását $A$1:$A$10-ről, $A$1:$A$11-re bővíti.Dinamikus tartomány az, aminek nincs jól behatárolt eleje/vége, tipikusan amikor egy teljes oszlop vagy sor tartozik a tartományba, pl $A:$A vagy $1:$1
Itt nincs dolga az Excel-nek, ezen nincs mit bővíteni, az adott oszlopba vagy sorba beírt adatok értelme szerűen az UBUL tartomány részét fogják képezni, az UBUL tartományt használó objektumokba (pl az érvényesítési listába) a beírt adat automatikusan bekerül.Szintén dinamikus tartományokhoz tartozik, amikor egész sor vagy oszlop a forrás, de bizonyos kivételekkel, azaz az UBUL tartomány ne a teljes oszlopot vagy sort tartalmazza, hanem pl csak a 2. sortól vagy 2. oszloptól legyen a teljes oszlop vagy sor az UBUL nevű tartomány forrása.
Pl ha az a terv, hogy az UBUL nevű tartomány F2-től kezdődően a teljes F oszlopot foglalja magábal, akkor az UBUL tartományt így kell megadni: [link]Az ily módon létrehozott dinamikus tartományok nagy előnye, hogy nem kell manuálisan módosítania a felhasználónak és természetesen az üres cellák sem jelentenek gondot, hisz (maradva az érvényesítési listáknál) van olyan opció, hogy az üres cellákat ne jelenítse meg.
Kicsit hosszú lett a hsz, de remélem azért érthető.
bugizozi és lacid90
Bocsesz, most nem válaszolok, kicsit szellőztetem a fejem, mert nem rég értem haza ilyen "teganelőtre kelle, totálkáros gépekbe életet lehelni" kategóriájú melóból, fáradt vagyok. (Ráadásul szabin vagyok, de "kénytelen voltam" elvállalni)
Remélhetőleg Delila_1 is feltűnik (tényleg, amúgy merre "csatangolsz?) vagy valaki más és leírja, hogy mi a megoldás. Én max eset valamikor fogok válaszolni(ha tudok persze), addig pihentetem a szürkeállományt.
-
-
lappy
őstag
Na akkor más a leányzó fekvése!!
Akkor az előbb amit csináltál azt szedd le! és csinál a következőt!
A képen látod a D1111 sort ez lesz nálad a "jelleg" nevű lista amit tartomány elnevezéssel készítesz el!
ezután minden egyes jelleghez létrehozod a saját listáját tartományelnevezéssel! pl: E -hez az a,b ,c!
ha hibát jelez az excel akkor adj neki vmi más elnevezést mint a kód!
pl: a nagy O betűt, O/Sz nél nem engedi elnevezni O nak találj ki vmi nevet neki!Ezután a B57 hez teszel egy érvényesítési listát! a lista a jelleg nevű lesz!! ezt már tudod hogy kell készíteni!
és az érvényesítés cellához pedig a következő listát kell tenni aminek a forrásához az indirekt fgv. használod (segítség a képen van) =INDIREKT(B57) nálad
Új hozzászólás Aktív témák
Hirdetés
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RTX 3050 6GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! ASROCK H310CM i3 9100F 8GB DDR4 240GB SSD GTX 1050Ti 4GB DeepCool Tesseract Chieftec500W
- Telefon felvásárlás!! Samsung Galaxy A16, Samsung Galaxy A26, Samsung Galaxy A36, Samsung Galaxy A56
- ÚJ Apple Macbook Air 15,3 M4 10C CPU/10C GPU/16GB/256GB - Ezüst -(2025) - 3 év gari - MAGYAR
- ÁRGARANCIA!Épített KomPhone i5 10600KF 16/32/64GB RAM RX 6600 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest