Az „Excel” fórum célja, hogy keretet adjon az Excel felhasználók széles táborának tapasztalataik megosztására, és lehetőséget a segítséget kérőknek. Az alábbi összefoglaló azért készült, hogy segítse a helyes kérdésfeltevést.
– Írd le szabatosan a problémát. Úgy fogalmazz, hogy ne csak te magad, de a szakértő is megértse, mire szeretnél választ kapni.
– Írd le, hogy milyen verziójú Excellel dolgozol. (Vagy ha nem – ill. nem csak – Excel, akkor micsoda?)
– Írd le, hogy milyen úton indultál el, és hol akadtál el rajta.
– A kérdés megértése szempontjából sokat segíthet, ha feltölteszt egy képet, amin látszik, hogy mit szeretnél, vagy illusztrálja azt.
– Még jobb, ha feltöltesz egy minta munkafüzetet valahová (pl. data.hu). Feltöltés előtt távolítsd el belőle a nem publikus adatokat.
– Ha a feladat jellege olyan, célszerű az "előtte" és "utána" állapotokat bemutatni. (Miből kellene csinálni mit?)
– Ha VBA kódon kell javítani, másold be a releváns kódrészt. Rövid kód mehet hozzászólásba, hosszú kód inkább ide: http://pastebin.com/
– Ha valami nem úgy működik, ahogy kellene, add meg a rendellenes viselkedés jellemzőit, a hibaüzenetet, és a hibát okozó programsort.
Azt meg tudtam csinálni, hogy ne engedje az excel bezárás előtt menteni a változtatásokat ás ne is lehessen lementeni "mentés másként"-el.
Így csináltam:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
ThisWorkbook.Saved = True
If SaveAsUI.Saved = True Then
Cancel = True
MsgBox ("Nem lehet másként menteni")
ElseIf ThisWorkbook.Saved = True Then
a = InputBox("Jelszó:", "Tudnod kell a jelszót, h engedje a mentést")
If a = "123" Then
MsgBox ("Mentve")
Else
Cancel = True
MsgBox ("Nem lehet menteni")
End If
End If
End Sub
Ezzel egyidejűleg, azt hogyan oldom meg, hogy csak én és mondjuk a megadott felhasználók tudják megnyitni? Environ-ra gondolok, hogy gépneveket adok meg, akiknek így adok jogosultságot a megnyitásra. Fontos, h gépnév legyen, ne felhasználó név.
Ezt még, hogyan és hová teszem hozzá?
Illetve még annyi, hogy gépneven azt a vezérlőpulton belül kikeresve - "teljes eszköznév" mellett szereplő nevet értjük, vagy az excelnek van egy "belső" gépneve, amit saját magának használ?
A beviteli munkalapon az A oszlopban vannak a partnerek, B oszlopban a hozzájuk tartozó kiadások, a másik munkalap neve Munka2 és az A1:B200 tartományban vannak a partnerek és a keretek, akkor a képlet a 2. sor első üres cellájába:
Ha táblázattá alakítod az adatbeviteli részt, akkor a függvény minden új sornál automatikusan megjelenik. (Ehhez a beállítások - speciális - adattartomány végén a formázás és képletek folytatása.
Kedves Fórumtársak! Az alábbiakban kérnék tanácsot.
Az egyik munkalapon van egy tábla, melyben a partnerek és kifizetési adataik kerülnek folyamatosan rögzítésre. A másik munkalapon van a partnerlista és az adott partnerhez tartozó keretösszeg.
A cél az lenne, hogy a kifizetési adatok rögzítésekor azonnal lehessen látni, ha az adott partner kerete elfogyott.
Ezt most úgy oldottam meg, hogy készítettem egy a partnereket csoportosító és a kifizetési adataikat összegző kimutatást, melyet minden egyes tétel rögzítése után frissítek.
1.Az első kérdésem, van erre valamilyen függvényes megoldás? (Groupby függvényt nem találtam.) 2. Ha nincs, akkor automatizálható a frissítés, úgy makróval, hogy ha az A2:A1000 tartomány nem üres celláinak száma változik fusson le a "kimutatás frissítése" (Alt+F5) parancs? (A kimutatás ua. oldalon van, ahol a tételek rögzítése történik.)
Logikus amit írsz és ez nyilván a sima HA egymásba ágyazásra is igaz. Viszont próbáld ki lsz. hogy az utolsó értéknél is nagyobbat írsz az L6 cellába. Ekkor hibaüzenet lesz a HAELSŐIGAZ eredménye. Ezért van az első felételnél a ">6" nálam.
Üdv.
Ps. Örültem, hogy az általam mutatott verziót kitaláltam. :))
Érdekes ez a HAELSŐIGAZ függvény. Kicsit próbálgattam a sajám mintaadataimmal, hogy nem lehet-e leegyszerűsíteni a VAGY(B2=A2;SZUM(B2:C2)>A2...stb. formula helyett VAGY(SZUM(B2:C2)>=A2 alkalmazásával. Aztán egyszer csak meglepetés ért. A függvény az egyenlőségjel nélkül is megtalálta a helyes eredményt. Azt állítottam be, hogy a kumulált érték az 5. hétnél pontosan legyen egyenlő az L6 értékével. Ezt írtam be: =HAELSŐIGAZ(P6>L6;0;SZUM(P6:Q6)>L6;1;SZUM(P6:R6)>L6;2;SZUM(P6:S6)>L6;3;SZUM(P6:T6)>L6;4;SZUM(P6:U6)>L6;5;SZUM(P6:V6)>L6;6;SZUM(P6:W6)>L6;7), mire kiadta az 5. hetet.
Az eredmény persze logikus, hiszen a 6. hét az első, ami nagyobb, mint az L6 értéke, így az 5. hét a jó eredmény, akár kisebb, akár egyenlő L6 értékével.
Csináltam egy új munkalapot a kumulatív vevői igényeknek (mert végülis ez egyönmagában is hasznos infó), és azon a lapon már probléma nélkül működik a dolog:)
Nem feltétlenül kell hozzá segédsor, egymásba ágyazott ha függvényekkel is megoldható, ha rövidebb időszakra tekintesz előre. A példában 6 napra van a képlet összeállítva, ha ennél messzebb szeretnél látni, akkor folytatni kell a HA(VAGY képlettel a ">6" helyén és az utolsó napra kerül a hamis ágra ">x"
"Ha jól értem egy kumulatív vevői igény segédsort készítesz." Pontosan. És ahogy írtam, bármelyik sorba kumulálhatod az igényeket. És akkor a P7:W7 helyett a megfelelő sor számát írod.
Ha végképp nincs a közelben üres sor, akkor írhatod a nullát akár az Akár AA oszlopba, a kumulált adatokat meg az AB-től, és akkor a képletben a P7:W7 helyett AB7:AO7, illetve amelyik oszlopig tartanak az adataid.
Meg lehet oldani képlettel, de kell egy kis ügyeskedés.
1. a 7. sorban (ha üres, egyébként lehet a 8., 9., stb.) az O oszlopba írj nullát, majd a P oszlopba az =O7+P6 képletet, majd ezt töltsd ki jobbra végig.
2. Az M6 oszlopba írd be a következő képletet: =HOL.VAN(L6;P7:W7;IGAZ) Az általam hasraütéssel beírt mintában ez a 6. hét.
Szia! A kérdező 2000-es Excelében levő KEREK függvény pedig magasabb verziókban már nem létezik, pedig az a magyar szabályok szerint kerekített... Az "új" Kerekítés függvény erre sajnos nem alkalmas.
Üdvözlet fórumtársak! Nem bírok egy feladattal, és ehhez kérek segítséget. A feladat: az A oszlopban lévő szám kerekítése, hogy az 5 alatt végződőt lefelé, az 5-re végződő marad 5-ön, az 5 felett végződőt felfelé. A "B" oszlopban lévő függvény "=KEREK(A2/5;0)*5" a "C" oszlopban "=KEREK(A2/10;0)*10" Létezik ilyen függvény, vagy trükk? A "C" oszlopban majdnem jó, de az 5-re végződőt is kerekíti.
Sajnos még nem kerültem megint a táblázat elé. Ezért nem reagáltam az írásodra. Köszi, hogy foglalkoztál vele.
Hogy mire jutottam a megoldásaitokkal, majd jelenetkezem. Már átszerkesztettem akkor, ahogy írtam az OFSZET-tel. De ha ezek vaslamelyike élhetőbb, akkor variálok rajta.
2. a tartomány amiben keressen (ha több oszlopból áll, akkor az első oszlopban keres)
3. hanyadik oszlopban lévő értéket adja vissza, ha találat van az első oszlopban
4. IGAZ/HAMIS vagy 1/0: HAMIS vagy 0 érték esetén pontos értéket keres, míg IGAZ vagy 1 érték esetén közelítő értéket keres.
Azaz a te példádban: FKERES(C3;$L$2:$N$9;3;1)
1. C3 értéket keressük 2. L2:N9 tartartományban (a példában a húzhatóság miatt rögzítve van dollár jellel a tartományt meghatározó két cella) 3. a 3. oszlopban lévő adatot adja vissza 4. 1, azaz IGAZ érték, így közelítő értéket fog visszaadni
Ha nincsenek növekvő sorrendben az értékek, akkor rosszul fog működni a képlet. Illetve valójában az M oszlopra nincs is szükség. Illetve ha az általad megadott adatokat vesszük alapul és 0-nál kisebb számot keresnénk, akkor #HIÁNYZIK hibát adna a képlet. Mivel 0-tól indul a keresendő érték megadása.