-
Fototrend
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
válasz
Lokids
#40722
üzenetére
Szia!
Első kérdés: Hány x van szerinted a 2019. április hónap oszlopában?
Mert itt a képen egy sem látszik
Kipróbáltad másik hónappal?Jó lenne látni a névkezelőben, hogyan vannak a nevek meghatározva. Arról tudsz képet mutatni? (Légy szíves képként feltölteni és nem másolni, mert akkor külön meg lehet nézni.)
Üdv.
-
Fferi50
Topikgazda
válasz
pvt.peter
#40716
üzenetére
Szia!
Szerintem már itt is volt olyan téma, ami megfelel a kérdésedre, csak most nem érek rá böngészni, légy szíves tedd meg.
Emlékeim szerint nevek használatával meg lehet oldani, de kellenek segédoszlopok és persze megfelelő képletek az adatérvényesítés rugalmassá tételéhez. Azt hiszem, megy makró nélkül is.Üdv.
-
Fferi50
Topikgazda
válasz
Lokids
#40712
üzenetére
Szia!
Igen, a Névkezelőben vidd fel a neveket.
"A1 cella értéke nálam fix cím: "Elvégzendő feladat". Gondolom akkor A2-től fog indulni minden."
Nem, a neveket úgy vidd be, ahogyan írtam, csak a munkalap nevét változtasd meg. Csak az eredmény képletében legyen a -SOR() helyett -SOR()+1.
(Az Excelben nem névtér van, hanem Hivatkozás, amire a név mutat. Szerencsére hivatkozásként képleteket is meg lehet adni.)
Ha nem magyar Exceled van hanem angol, akkor az angol függvényneveket kell használnod.Üdv.
-
Fferi50
Topikgazda
Szia!
Erre mondják azt, hogy klasszikus adatbázis feladat, ami nem Excellel oldható meg optimálisan. Hiszen ha belegondolsz, ez legalább 3 dimenziós táblát jelent. Minden emberhez tartozik a tevékenysége és az irányítószáma alapján egy mátrix.
Már csak azért is érdekes ez, hiszen az 1111 irányítószám alatt nem csak Attila végezhet festést, hanem gondolom még több másik ember is.
Tehát "alaptáblákat" kellene létrehoznod az emberekre, a tevékenységekre, az irányítószámokra, közöttük pedig "kapcsolómezőket" kialakítani a kereséshez. A keresés pedig összetett lesz, az INDEX és HOL.VAN függvényekkel lehet megoldani szerintem.Üdv.
-
Fferi50
Topikgazda
válasz
pvt.peter
#40704
üzenetére
Szia!
Miért nem jó erre a normál autoszűrő???
Ha kiválasztod az A oszlopban a bbb-t akkor csak 5 érték marad és ennek megfelelően csak az eee és fff értékek választhatók a B oszlopban, ha eee-t választasz a B oszlopban, már csak 2 sor marad látható, így a C oszlopban a kkk és lll szűrhető.Mire szeretnéd az eredményt használni?
Üdv.
-
Fferi50
Topikgazda
válasz
Lokids
#40700
üzenetére
Szia!
Kicsit többet kell vele dolgozni, de meg lehet oldani.
Mivel az x jelek ismétlődnek, ezért az ismétlős keresésre kialakított képletemet alakítottam egy kicsit.
A képlet feltételezései:
Egy munkalap első oszlopában vannak a tevékenységek, az első sorban pedig a hónapok.
A legördülő listaválasztó pedig ugyanezen munkalap O1 cellája tartalmazza.
Ahhoz, hogy "munkalapfüggetlen" legyen a képletünk, létre kell hozni az alábbi neveket:
Természetesen a Munka1 helyett az adataidat tartalmazó munkalap nevét kell írnod. Ha azon a lapon állva szúrod be a neveket, akkor magától hozzáteszi a munkalap nevét, a hatókör munkafüzet legyen/maradjon.Tevekenyseg: =ELTOLÁS(Munka1!$A$1;0;0;DARAB2(Munka1!$A$1:$A$200);1) (a 200 helyett a nálad levő adatok utolsó sorát meghaladó számot írj.
Adatok: =ELTOLÁS(Munka1!$A$1;0;0;DARAB2(Tevekenyseg);13)
honapok =Munka1!$A$1:$M$1 ' az adatok első sora, amely a hónapokat tartalmazza
honap =Munka1!$O$1 ' ez lesz a lenyíló cellája
keresem =INDEX(Adatok;0;HOL.VAN(honap;honapok;0)) ' itt keressük meg az aktuális hónapot
Ezek után a tömbképlet a következő:=HAHIBA(INDEX(Tevekenyseg;HOL.VAN(KICSI(HA("x"=keresem;SOR(Tevekenyseg);"");DARABTELI(keresem;"x")-(DARABTELI(keresem;"x")-SOR()));SOR(Tevekenyseg);0);1);"NINCS TÖBB")
A tömbképletet Ctrl+Shift+Enter billentyűkombinációval zárjuk, az Excel kapcsos zárójelbe teszi.
Ezt a képletet a munkalap első sorába kell írnod és húzhatod lefelé, ameddig "NINCS TÖBB" értéket nem kapsz. Ha nem az első sorban kezded a képletet, akkor a -SOR() helyére -SOR()+X képletet írd, amelyben az X a kezdő sor száma -1!Remélem, jól gondoltam, mire van szükséged.
Üdv.
-
Fferi50
Topikgazda
Szia!
Hol vannak a nevek? És milyen alapon lehetne a tevékenységekkel és az irányítószámokkal összehozni ezeket?
Nyilván a tevékenységek különböző irányítószámokon is előfordulhatnak.
Első lépésként szerintem az A B oszlopon levő tevékenység-irányítószám 40 ezer sorából kiszűrném az ismétlődéseket. (Adatok - ismétlődések eltávolítása - mindkét oszlop kijelölve)
Ezután kiderül, hány sorod marad.
De még mindig él az első kérdésem.Üdv.
-
Fferi50
Topikgazda
válasz
p5quser
#40636
üzenetére
Szia!
Még egy ötlet, esetleg ennek is hasznát veheted:
A keresésnél (Fkeres, Hol.Van függvény) lehet használni pl. a * (csillag) joker karaktert, ami tetszőleges karaktersorozatot helyettesít:
"*tart*" olyan cellát keres, amelyben megtalálható a tart szótöredék
"tart*" olyan cellát keres, amelyik tart szövegrészlettel kezdődik
"*tart" pedig olyan cellát keres, ahol tart a szöveg vége
Ebben az esetben nem számít, hány karaterből vagy hány szóból áll a megtalálandó cellában a szöveg.Pl. Fkeres(Bal("Tartalék akkumlátor mobiltelefonhoz" ;4) & "*";Másik tábla;1;0) visszaadja az első olyan találatot, amelyik Tart -tal kezdődik. Fontos a 4. paraméter 0 (HAMIS) értéke!
Üdv.
-
Fferi50
Topikgazda
válasz
p5quser
#40632
üzenetére
Szia!
"Ha az stnm helyére beírom idézőjelekkel az adat file teljes nevét kiterjesztéssel, teszi a dolgát"
Mit értesz teljes név alatt? Ha csak a kiterjesztéssel bővített fájlnevet, akkor rendben van. Ha viszont az elérési utat (Path) is beleérted, akkor nem működhet rendesen.
Megnyitott munkafüzetre a fájlnévvel (Name) lehet/kell hivatkozni, igen, kiterjesztéssel együtt.
Viszont itt:If stnm <> "" Then
Workbooks.Open stnm
End IfAz stnm a Path-t is fogja tartalmazni, ezért jelentkezik hiba az adott sorban.
Ebből az alábbi sorral kaphatod meg a fájl nevét:fnev=Mid(stnm,InStrRev(stnm,"\")+1)Még egy megjegyzés: Amikor megnyitod az stnm nevű munkafüzetet, az lesz az aktív munkafüzet, tehát a nevét az ActiveWorkbook.Name tulajdonsággal is lekérdezheted.
Üdv.
-
Fferi50
Topikgazda
válasz
szöszi29
#40614
üzenetére
Szia!
Most akkor melyik oszlopban van a keresett eredmény? Az S vagy az I oszlopban. Mert ha az S -ben van, akkor az
=FKERES(Q2;Raktár!N2:S25042;2;0)helyett=FKERES(Q2;Raktár!N:S;6;0)
képlet kell, mert az S oszlop az N:S tartományban a 6 oszlop - ez a függvény 3. paramétere.Ha az I oszlop adata kell, akkor az Index - Hol.Van függvény párost kell alkalmaznod:
=Index(Raktár!I:I;Hol.Van(Q2;Raktár!N:N;0))Üdv.
-
Fferi50
Topikgazda
Szia!
A keres-cserél (Ctrl+F magyarban) funkcióval meg tudod csinálni.
Beállítod a keresésnél a formátum mintát a sárga kitöltésre - persze nézd meg, hogy egyezzen a cellák sárgájával - majd a cseréhez beírod pl. hogy x . Az összes cseréje egyből megoldja az egészet.
A keresendő szövegbe nem kell érték.
Akár a sárga hátteret is megváltoztathatod, ha cserélendőben a formátumot beállítod az újra.
Üdv. -
Fferi50
Topikgazda
válasz
sz_abika
#40581
üzenetére
Szia!
Sajnos a * joker karakter a keresésnél, így a három * is azt jelenti, hogy nem üres a cella, amit keresünk.
Ezért helyette valami más jelzést kellene kitalálnod.
Vagy ciklussal végigmenni az oszlopon addig, amíg nem találod meg a három *-ot cellaértékként és azt tekinteni a formázás végét jelző sornak.Üdv.
-
Fferi50
Topikgazda
válasz
Bocimaster
#40568
üzenetére
Szia!
Szumhatöbb függvény? Az év,hó,nap,idő cella értékeket átalakítva dátummá.
Üdv.
-
Fferi50
Topikgazda
válasz
Pinocchio23
#40563
üzenetére
Szia!
A cella zárolás nem szereti az oszlopok összevonását. Külön-külön nem lehet az oszlopokat zárolni, csak egyben. Ezért meg kell keresni az első olyan dátumot az első sorban, amit már nem kell zárolni.
Íme a makró:Sub zarolo()
Dim oszlop As Integer, cl As Range
ActiveSheet.Unprotect "jelszo"
With ActiveSheet.UsedRange
For Each cl In .Rows(1).Cells
If cl.Value >= Date Then oszlop = cl.Column - 1: Exit For
Next
.Range(.Cells(1, 1), Cells(.Rows.Count, oszlop)).Locked = True
End With
ActiveSheet.Protect "jelszo"
End SubÜdv.
-
Fferi50
Topikgazda
válasz
Pinocchio23
#40563
üzenetére
Szia!
Persze.
Üdv,
-
Fferi50
Topikgazda
válasz
Pinocchio23
#40556
üzenetére
Szia!
A lapvédelem feloldása ott van a makró elején:
(ActiveSheet.Unprotect "jelszo")
Ezután a teljes használatban levő területet feloldja.
Hamarabb le kellene állnia, ha nem tudja feloldani.
Ha viszont feloldja, akkor zárolni is tudni kellene.
Látatlanban ennél többet nem tudok mondani.
Esetleg az oszlop számát meg tudod mondani?
Vagy feltenni a mintát valahova?Mert nálam összevont cellák és rögzített oszlopok esetén is megy.
Üdv.
-
Fferi50
Topikgazda
válasz
Pinocchio23
#40549
üzenetére
Szia!
Makró:
Sub zarolo()
Dim oszlop As Range
ActiveSheet.Unprotect "jelszo"
With ActiveSheet.UsedRange
.Locked = False
For Each oszlop In .Columns
If oszlop.Cells(1).Value < Date Then
oszlop.Locked = True
End If
If oszlop.Cells(1).Value = Date Then
Exit For
End If
Next
End With
ActiveSheet.Protect "jelszo"
End SubBeteheted a Workbook Open eseményébe a meghívását.
Üdv.
-
Fferi50
Topikgazda
válasz
bteebi
#40535
üzenetére
Szia!
Nem egészen értem, hogy miért nem userfriendly az autószűrős megoldás. A 3 oszlopon szépen végig választja amit szeretne látni.
Ha kiválasztja az A oszlopban az Audit, a másik két oszlopban már csak az Audikra vonatkozó értékek jelennek meg stb. A végén ott marad a kívánt lista a rendszám oszlopban.
Ennél szerintem nincs kényelmesebb.
Arról nem is beszélve, hogy a saját begépelésbe hiba is csúszhat, amibe megnyekkenhet a körülményesen beállított listafüggvények.Szerintem érdemes megfontolni. Még akkor, ha ennél komplexebb a probléma --- talán azzal együtt kellene felvetned, lehet többet tudnánk segíteni.
Üdv.
PS. Nem biztos, hogy mindig a bonyolultabb utat kell választani. -
Fferi50
Topikgazda
Szia!
Az üres cellák miatt kissé bonyolult lett a képlet. Egy segédoszlopba - legyen ez mondjuk az E oszlop, az E2 cellába írd ezt a képletet:
=HA(DARABTELI(A:A;A1)-DARABÜRES(INDIREKT("B"&HOL.VAN(A1;A:A;0)&":B"&HOL.VAN(A1;A:A;0)+DARABTELI(A:A;A1)-1))=0;HOL.VAN(A1;A:A;0);DARABTELI(A:A;A1)+HOL.VAN(A1;A:A;0)-DARABÜRES(INDIREKT("B"&HOL.VAN(A1;A:A;0)&":B"&HOL.VAN(A1;A:A;0)+DARABTELI(A:A;A1)-1))-1)
A képlet húzható lefelé.
Ezután a C1 cella képlete:=HA(INDEX(B:B;E1)=0;"";INDEX(B:B;E1))
Így azoknál a termékeknél, ahol egyáltalán nincs dátum, nem ír ki semmit.Üdv.
-
Fferi50
Topikgazda
válasz
andreas49
#40498
üzenetére
Szia!
Ha azt szeretnéd, hogy növekvő "névsor" szerint legyenek az értékek, akkor a H oszlop képletében ne + hanem - jelet használj:
=F5+SOR()*0,0001 helyett =F5-SOR()*0,0001A formázást vagy makróval lehet átvinni vagy feltételes formázási szabályokat alkotsz megfelelő feltételekkel pl. cellák formázása képlet alapján.
Üdv.
-
Fferi50
Topikgazda
válasz
dellfanboy
#40470
üzenetére
Szia!
Nyilván munkalapot védtél le (protect sheet).
A cella szerkeszthetősége attól függ, hogy zárolt-e vagy sem. Alapból minden cella zárolt de a zárolás csak akkor lép életbe, ha a munkalapot levéded.
Felételezhető, hogy az inkriminált, védelem után is szerkeszthető cellákról a zárolás valamilyen ok miatt már korábban lekerült. Ezért engedi szerkeszteni a lapvédelem után is.
Állj rá a cellára. Jobb egérgomb - cellaformázás - védelem fülön látható a Zárolt és a Rejtett állapotot jelző "kocka". Ha nincs kipipálva a Zárolt, akkor szabadon szerkeszthető védelem esetén is. Be kell jelölni a lapvédelem bekapcsolása előtt. Egész cellatartományokat is bejelölhetsz egyszerre - kijelölés után.Üdv.
-
Fferi50
Topikgazda
válasz
Paxker315
#40434
üzenetére
Szia!
Tételezzük fel, hogy az A1:A5 cellákban van a keresés, a C1 cellában a keresendő szöveg.
A D1 cellába írd be a következő tömbképletet:=SZUM(HA(HIBÁS(SZÖVEG.KERES($C$1;$A$1:$A$5)>0);0;1))
A tömbképletet Ctrl + Shift + Enter billentyűkombóval kell bevinni, az Excel kapcsos zárójelbe teszi.Üdv.
-
Fferi50
Topikgazda
válasz
BullZeye
#40428
üzenetére
Szia!
Mind az Fkeres, mind a Hol.van függvénynél használható a keresésre a csillag (*) joker karakter.
Ezzel lehet keresni többszavas cellában is.
Mivel itt a keresési oszlop hátrább van, mint az eredmény oszlop, ezért az INDEX-HOL.VAN páros használható:A C13 cella képlete legyen ez:
=INDEX(E$2:E$6;HOL.VAN("*" & $A13 & "*";$G$2:$G$6;0))
Ezt elhúzhatod lefelé és oldalra is.Figyelj az átírásnál a $ jelekre.
Üdv.
-
Fferi50
Topikgazda
válasz
Declare
#40421
üzenetére
Szia!
"ha datumot beirom az inputboxba, nem törtenik semmi"
Történik, annyi, hogy nem találja meg amit keresel. Dátumot csak dátumként lehet keresni. Az inputboxba pedig nem tudsz dátumot beírni közvetlenül.
Szövegként tudod beírni és utána átalakítani dátummá.
Pl.OK = Application.InputBox("Wonach soll gesucht werden? ",type:=2) 'szöveget kell bevinni az érvényes rendszer dátumformátumban, pl. magyarban éééé.hh.nn
Set c = .Find(Datevalue(OK), LookIn:=xlValues)De probléma lehet az is, ha a keresendő oszlopban nem dátumok, hanem dátumnak látszó szöveges értékek vannak! Erről meggyőződhetsz, ha a cella formátumát megváltoztatod számra - ha dátum volt benne, akkor számot fogsz látni, ha nem, akkor az eredeti értéket. Természetesen vissza is lehet változtatni.
Ha dátumnak látszó szöveg van, akkor olyan formátumú szöveg kell legyen a keresés is.Üdv.
-
-
Fferi50
Topikgazda
válasz
Declare
#40412
üzenetére
Szia!
1. Akkor valami nincs rendben nálad, mert ez a parancssorWorksheets.Add(After:=Sheets(Sheets.Count)).Name = newSheetName
mindig az utolsó után szúrja be az új munkalapot. Mindegy, hogy melyik munkalapról indítod.
Esetleg lehagytad az zárójeles paramétert, vagy a Before paramétert használod?2. Ha gond van vele kérdezz bátran.
Üdv.
-
Fferi50
Topikgazda
válasz
sz_abika
#40408
üzenetére
Szia!
Egy munkalapra vagy a pontos nevével vagy a munkafüzetben elfoglalt helyének a sorszámával hivatkozhatsz.
Ha feltételesen keresed a munkalapot, akkor ciklusban kell végignézned azokat.
Pl.Sub keresi()
Dim sh As Worksheet, shvan As Boolean
shvan = False
For Each sh In Worksheets
If Left(sh.Name, 3) = "xxx" Then
ActiveCell.Offset(-2, 0).Value = sh.Range("A1")
shvan = True
Exit For
End If
Next
If Not shvan Then MsgBox "Nincs ilyen munkalap"
End SubÜdv.
-
Fferi50
Topikgazda
válasz
Heavyrain
#40390
üzenetére
Szia!
Attól függ, milyen értékeket szeretnél interpolálni, mert többféle függvényt is használhatsz.
Egy javaslat:
Csinálj grafikont az adataidból, azután illessz hozzá trendet.
Megnézheted, melyik fajta trend illeszkedik a legjobban az adataidhoz.
A trend egyenlettel számolhatsz.Üdv.
-
Fferi50
Topikgazda
válasz
Faterkam
#40378
üzenetére
Szia!
Az időformátumban nem lehet negatív számot megjeleníteni. Viszont több lehetőség is van a szemléltetésére:
1. A cél cella formátumát állítsd számra, akkor megjelenik a negatív érték is, beállíthatod a pontosságot a kívánt mértékre. OK, ez nem lesz időformátumú - mint előbb írtam az nem működik.
2. A cél cella képletben ne egyszerű kivonást használj, hanem az abszolút értékek kivonását, (Abs(A1-B1)) így marad az idő formátum a cél cellában is. Persze ekkor meg nem látod, hogy mínusz lett az idő.....
de ezen feltételes formázással lehet segíteni:
Feltételes formázás: a formázandó cellák meghatározása képlettel, a képlet pedig = B1<A1 ha a B oszlopban van a mért idő - ezután kiválasztod a megjelenítést. Így ránézésre fogod látni, ki a jobb.A feltételes formázás akkor is működik, ha a cél celládban az időformátum miatt a ### jelenik meg, tehát azt látni lehet, hogy miért ez az eredmény.
Üdv.
-
Fferi50
Topikgazda
Szia!
A Ha másik ágát kell bővítened egy Ha függvénnyel:
=HA(VAGY(Munka1!$B$10=Munka1!$B38;Munka1!$D$10=Munka1!$B38;Munka1!$E$10=Munka1!$B38;Munka1!$I$10=Munka1!$B38;Munka1!$J$10=Munka1!$B38;Munka1!$F$10=Munka1!$B38;Munka1!$L$10=Munka1!$B38;Munka1!$M$10=Munka1!$B38;Munka1!$N$10=Munka1!$B38;Munka1!$O$10=Munka1!$B38;Munka1!$P$10=Munka1!$B38);"n";HA(Munka1!$A$10=Munka1!$B38;"n8";""))Üdv.
-
Fferi50
Topikgazda
-
Fferi50
Topikgazda
válasz
molnarbalazs
#40311
üzenetére
Szia!
A képlet:
=INDEX($D$2:$W2;HOL.VAN("x";$D5:$W5;0))Üdv.
Ps. Használd a programkód gombot (lenti második sor első gomb), hogy "ne röhögjenek ki". -
Fferi50
Topikgazda
válasz
bozsozso
#40286
üzenetére
Szia!
Szerintem működik a dolog tömbképlettel is: A gyümölcsneveket az ismétlődések eltávolítása után transzponálod, hogy egy sorban legyenek.

Amint látod, az E2 cellába került az alábbi tömbképlet:
=HAHIBA(INDEX($A$2:$A$1000;HOL.VAN(KICSI(HA(E$1=$B$2:$B$1000;SOR($B$2:$B$1000);"");DARABTELI($B$2:$B$1000;E$1)-(DARABTELI($B$2:$B$1000;E$1)-SOR($A1)));SOR($A$2:$A$1000);0);1);"NINCS TÖBB")
Ezt Ctrl+Shift + Enter billentyű kombinációval kell lezárni. Az Excel pedig kapcsos zárójelbe teszi.
A tartomány végét tetszőlegesen határozhatod meg, de egész oszlopokat nem javaslok, mivel akkor nagyon lassúvá válik (gondolj a cellák számára).
A NINCS TÖBB szöveg helyébe tehetsz akár üres szöveget is, vagy bármi mást.Üdv.
-
Fferi50
Topikgazda
Szia!
Ha jól értettem a feladatot, akkor nézd meg ezt a képletet a B1 cellába:
=INDIREKT("A" & SOR()+50*(OSZLOP()-1))
Ezt aztán húzhatod oldalra és lefelé is, amíg el nem érsz a végére az információidnak.
Az 50 helyére azt a számot írd, ahány cellát szeretnél kitölteni egy-egy oszlopban.
Amikor végeztél, jelöld ki az egész képletes részt - majd másolás - irányított beillesztés értéket.
Ezután az 50 alatti cellákat törölheted. (De csak miután a képleteket átalakítottad értékké!)Üdv.
-
Fferi50
Topikgazda
válasz
Laciahegyrol
#40191
üzenetére
Szia!
A tartományt sem jól jelölted ki.
WorksheetFunction.CountIf(Range("A:A"), "<" & valtozo)
a megfelelő formátum.Üdv.
-
Fferi50
Topikgazda
válasz
Ronyman
#40187
üzenetére
Szia!
A kapcsolódó adatok megkeresésére lehet használni az FKERES illetve az INDEX-HOL.VAN függvényeket.
Ezekkel lehet egy táblába összehozni a szükséges tételeket.
Természetesen szívesen segítünk, ha pontosabban megfogalmazod a problémát, esetleg teszel fel egy mintát.Üdv.
-
Fferi50
Topikgazda
Szia!
A hivatkozásoknak a teljes elérési utat kell tartalmazni, akkor látszanak az értékek olyankor is, ha a másik fájl zárva van.
Ezt úgy érheted el, hogy mentés előtt bezárod a forrás fájlt. Ekkor a célfájlban megjelenik a teljes hivatkozás. Ezután mentsd el ezt a fájlt (érdemes szerintem az automatikus frissítés beállítása megnyitáskor opciót beállítani).
Persze a forrás fájlt "nem illik" elmozdítani az eredeti helyéről, mert akkor nem fogja megtalálni a cél fájl.Üdv.
-
Fferi50
Topikgazda
válasz
Ronyman
#40183
üzenetére
Szia!
Ha úgyis körlevélben gondolkodsz, akkor csináld meg a körlevelet Wordben és ott rendeld hozzá a levélhez a kívánt mezőket. Ahogy "görgeted" a neveket, úgy változnak automatikusan a mezőkben levő adatok is. Nincs értelme egy másik Excel munkalapnak ebben az esetben szerintem.
Üdv.
-
Fferi50
Topikgazda
válasz
PRDZsolesz
#40174
üzenetére
Szia!
Az Fkeres függvénnyel meg tudod oldani. Felveszel egy táblázatot a határokkal és a függvénnyel itt kerestetsz. A negyedik paraméntert pedig Igaz értékre állítod.
Javaslom nézd át az Fkereshez tartozó helpet.Üdv.
-
Fferi50
Topikgazda
válasz
CobraKai
#40171
üzenetére
Szia!
Esetleg tedd fel ide a kérdésed (bár itt program kezdeményeket is várnak melléje):
https://prog.hu/katalog/4600/visual-basic
Vagy ide:
https://prog.hu/tudastar/cimkek/2010/microsoft-accessDe lehet, itt még nagyobb a lehetőség érdemi válaszra:
https://pcforum.hu/tudastar/cimkek/10020/adatbaziskezeles?opener_wnd=54Üdv.
-
Fferi50
Topikgazda
Szia!
Jól gondolod. Ráadásul a képlettel nem hivatkozhatsz magára a cellára, amiben a képlet van, mert az hibát okoz.
Szerintem megpróbálkozhatnál a feltételes formázással:
- a formázandó cellák kijelölése képlettel
Képlet:pl =A1=""
Formázásnál megadod a kitöltőszínt vagy a szegélyt.
Alkalmaz.
Amíg üres a cella, színes lesz. Ha bármit beleírnak, "kifehéredik". Vagy adhatsz arra is egy másik színt, ha van bele írva.Ha ez nem tetszik, akkor az eseménykezelő makró lehet a megoldás.
Üdv.
-
Fferi50
Topikgazda
válasz
Delila_1
#40153
üzenetére
Szia!
Szerintem ez még nem oldja meg így a problémát, mert nem figyel a többi üzlet áraira.
Ahhoz, hogy ki tudjuk választani a Pennyben legolcsóbb összetételt, szükség van arra, hogy meghatározzuk a többi üzletben is az árakat ugyanarra a termékösszetételre.
Így a Solver feltételeit bővíteni kell.
A B9 képlete:=SZORZATÖSSZEG(B2:B7;$G$2:$G$7)
Ezt lehet végighúzni a soron.Azt feltételeztem, hogy mindenből szeretne legalább 1 db/kg-ot venni. Ez természetesen módosítható.
Üdv.
-
-
Fferi50
Topikgazda
válasz
ROBERTOH
#39957
üzenetére
Szia!
Nézd meg a Windows területi beállításait, ott valószínűleg a ponttal végződő van beállítva. Azt kell átállítanod.
Másrész, ha szöveges, "dátumnak látszó" értéket kapsz inputban, akkor hiába állítod a cellát dátumformátumra. A szövegből dátumfüggvénnyel (pl dátum év,,hó nap) tudsz dátumot csinálni, a szövegdaraboló függvények segtségével.Üdv.
-
Fferi50
Topikgazda
válasz
dellfanboy
#39949
üzenetére
Szia!
Az adatokat tarthatod Accesben, azzal csak neked kell foglalkozni. A felhasználók pedig használhatják az Excelt.
Az Adatok menücsoport alatt többféleképpen is elérheted az Excelből az Accest (külső adatok átvétele, új lekérdezés).
Szerintem nem kell hozzá Power Query.Üdv.
-
Fferi50
Topikgazda
válasz
dellfanboy
#39947
üzenetére
Szia!
Most miben vannak az adataid nyilvántartva? Mert elég sok adatformából lehet lekérdezést csinálni Excelben is. Nem kell az egész adattömegnek az Excelben lennie.
Üdv.
-
Fferi50
Topikgazda
válasz
friccccc
#39924
üzenetére
Szia!
Az Application.EnableEvents tulajdonság kapcsolja az eseménykezelést. False érték esetén nem fut rá az eseménykezelésekre, True esetén végrehajtódnak az eseménykezlésben levő parancsok.
Miután a 3. sorban kikapcsolod az eseménykezelést, nem hajtódik végre a Worksheet_Change eseménykezelő.
Ha ezt a sort kihagyod, működni fog.
Persze lehet, hogy más miatt ki kell kapcsolnod. Ezt teszteld le légy szíves.Üdv.
-
Fferi50
Topikgazda
válasz
patesz
#39913
üzenetére
Szia!
"Valamiért azt írja a hogy csak az Aktív lapra kerülhet és nem csinálja meg."
Valóban az a tulajdonsága a speciális szűrőnek, hogy csak az aktív lapra tudja az eredményt kitenni.
Ez Redmond bugja.)
Viszont ha az aktív lapról indítod a műveletet, akkor a párbeszédablakban a listatartományt és a szűrőtartományt is kijelölheted az adatokat tartalmazó munkalapon.
Ezután bejelölöd a más helyre másolja kapcsolót, megadod az aktív munkalapon az eredmény helyét. Majd OK gomb nyomása.Üdv.
-
Fferi50
Topikgazda
válasz
föccer
#39721
üzenetére
Szia!
Bocsánat, hogy bele vau-vau. De a szűrések, összesít függvény helyett nem lenne célszerűbb Adatbázis függvényeket, netán kimutatást használni. Ott nagyobb szabadság van ilyen téren szerintem. Esetleg szóba jöhetne az Advanced Filter amivel egyből lehet másolni másik helyre, sőt az ismétlődések is figyelmen kívül hagyhatók.
Üdv.
-
Fferi50
Topikgazda
válasz
marec1122
#39678
üzenetére
Szia!
Ha számolni is szeretnél az eredménnyel, akkor két cella kell hozzá:
Az elsőben a raklapokat számolod, a másodikban a zsákmaradékot.
Az első képlete Kerek.Le(A1/A2;0), a második képlete Maradék(A1;A2).
Egyéni cellaformázást adhatsz mindkét cellának a cellaformázás egyéni menüpontjában:
első cellára 0\rl, a második cellára 0\zs.Üdv.
-
Fferi50
Topikgazda
válasz
modflow
#39600
üzenetére
Szia!
Alapból minden cella zárolt egy új munkalapon. De a zárolás csak akkor érvényes, ha bekapcsolod a munkalap védelmet. Magyar Excelben Véleményezés - lapvédelem.
A "szabad" celllákat kijelölöd - jobb egérgomb - cellaformázás - védelem - a Zárolt négyzetből kiveszed a pipát.Üdv.
-
Fferi50
Topikgazda
válasz
tgumis
#39533
üzenetére
Szia!
Feltöltöttem ide egy javaslatot:
A Törzsszám oszlopra létrehoztam egy nevet.
A Munka2 munkalap a "beviteli" munkalap. Itt a C oszlop a törzsszám. Az első pár cellára megcsináltam az adatérvényesítést, ahol az érvényes lista a Törzsszám. Ez a mindenkori tényleges adatokat fogja tartalmazni a név meghatározása miatt.
A többi oszlopban az Index - Hol.van képlet páros játszik.
A bevitel rögzítéséhez szükséges volt egy makró. Ez egyrészt beviszi az adatot a Munka1 tábla megfelelő helyére, másrészt visszaállítja a kereső képletet (mivel az új érték beírásával az eltűnne).Remélem, valami ilyesmire gondoltál.
Üdv.
PS. A törzsszám generálásra egy javaslatot a Munka1 munkalap DA oszlopában találsz. Ebben az esetben garantált az azonos törzsszámok elkerülése.
-
-
Fferi50
Topikgazda
válasz
vvoros
#39322
üzenetére
Szia!
1. Légy szíves használd alul a Programkód gombot, mert így bizony nem lehet értelmezni amit írtál

2.Nyilván makrórögzítővel vetted fel ezt a kódot. Ha van egy megfelelően működő képleted az I2 vagy másik cellában, akkor a VBA nézet Immediate ablakában (ha nem látod, akkor a View menüben megtalálod) beírod a következő sort:
? Range("I2").Formula utána Enter
Így meglátod a megfelelő képletes formát, pl.=AVERAGEIFS(A1:A7,B1:B7,">0")
Ez alapján meg tudod adni a tartományod számára a képletet, pl.Range("I2:I" & NumberOfData).Formula="=AVERAGEIFS(A$1:A" & NumberOfData & ",B$1:B" & NumberOfData & ","">0"")"
Természetesen ha abszolút hivatkozás kell valahova, akkor ne felejtsd le a dollárjelet.Üdv.
-
Fferi50
Topikgazda
válasz
friccccc
#39267
üzenetére
Szia!
Excel függvénnyel szerintem ez nem megy.
VBA-ban mindenképpen a Worksheet_Change esemény kezelésébe kell beletenni:
Ha képlet változtatja a D1 cella értékét, akkor kell megnézni, ha a képleten szereplő "előd" cellák értéke változott - itt az A1 és B1 cellák változásakor vizsgáljuk a D1 értékét:Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:B1")) Is Nothing Then Exit Sub
Application.EnableEvents = False
If Range("D1").Value = "OK" Then Range("E1").Value = Range("E1").Value + 1
Application.EnableEvents = True
End Sub
Természetesen ha más cellák értékétől függ a D1 cella értéke, akkor azon cellák címeit kell ide írnod a Range("A1
1") helyett. Több cellát, nem összefüggő tartományt vesszővel elválasztva írhatsz a Range(…. ) címeként.
Ha makróval írod be az OK-t a D1 cellába, akkor a beírással egyidejüleg növeled az E1 cella értékét.If feltételed then Range("D1").Value="OK":Range("E1").Value=Range("E1").Value+1
Feltételed helyére írod a saját feltételed.Üdv.
-
Fferi50
Topikgazda
Új hozzászólás Aktív témák
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- BMW topik
- Mibe tegyem a megtakarításaimat?
- Házimozi belépő szinten
- Linux kezdőknek
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Kuponkunyeráló
- Gumi és felni topik
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

A lényeg az útmutatás, (Igaz azt Toldi sokkal jobban csinálta.
)
1") helyett. Több cellát, nem összefüggő tartományt vesszővel elválasztva írhatsz a Range(…. ) címeként.
Fferi50