Hirdetés

2024. április 30., kedd

Gyorskeresés

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)

Téma összefoglaló

Téma összefoglaló

  • Utoljára frissítve: 2023-11-13 08:31:56

LOGOUT.hu

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.

Összefoglaló kinyitása ▼

Hozzászólások

(#24151) Delila_1 válasza Wyll (#24149) üzenetére


Delila_1
Topikgazda

Elég a láthatóság megfordításához az a makró, amit a Click eseményhez írtam, nem kell külön másikban fordítani. A Then és az Else ágak elvégzik a munkát.

Ezt a másik makrót nem értettem, míg nem közölted az AngolCellakOnOff makrót.

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#24152) Fferi50 válasza Wyll (#24149) üzenetére


Fferi50
őstag

Szia!

Az inicializálásnál megnézed, hogy el van-e rejtve az oszlop. Ha igen, akkor nem kell állitanod a gombot.
Ha nincs elrejtve, elrejted és átállítod a gombot, ami utána majd visszaállítja a láthatóságot.

Üdv.

(#24153) Fferi50 válasza PETEE78 (#24146) üzenetére


Fferi50
őstag

Szia!

Várom!

Üdv.

(#24154) slashing válasza Fferi50 (#24152) üzenetére


slashing
senior tag

Van arra mód hogy ne fusson hibára a macro a sheet_akármi.Select eseménynél ha az a lap rejtve van?

szerk.: nem válasz akart lenni...

[ Szerkesztve ]

(#24155) Fferi50 válasza slashing (#24154) üzenetére


Fferi50
őstag

Szia!

Ha a select előtt megnézed, hogy látható-e a sheet, ha nem akkor előtte láthatóvá és aktívvá teszed.

If sheet_akarmi.visible<>xlsheetvisible then sheet_akarmi.visible=xlsheetvisible
sheet_akarmi.select

Üdv.

Egyébként pedig szerintem meg kellene oldani a feladatot select nélkül. Az működik hidden és veryhidden állapotú munkalapnál is.

[ Szerkesztve ]

(#24156) slashing válasza Fferi50 (#24155) üzenetére


slashing
senior tag

jaja hasonlóra jutottam én is

If WS1.Visible = False Then
WS1.Visible = True
End If

viszont a végén újra el kell rejteni ami nem is gond de úgy kéne hogy ha látható volt akkor ne rejtse csak akkor ha rejtve volt a futáskor. Szóval valahogy el kéne tárolni a kezdő értéket de hogyan?

(#24157) Fferi50 válasza slashing (#24156) üzenetére


Fferi50
őstag

Szia!

Egy public változóba beleteszed a sheet.visible értékét. Aztán a workbook_close eseményben visszaállítod a sheet.visible értékét erre.

Üdv.

(#24158) slashing válasza Fferi50 (#24157) üzenetére


slashing
senior tag

awhhhh köszi

amúgy azt csinálja hogy átugrik a lapra az A oszlopn csinálnál egy advance filtert és másolja az egyedi értékeket egy másik oszlopba ami kap egy nevet a névkezelővel hogy dinamikusan növekedhessen a lista mert ebből meg egy másik lapon legördülő menü van :D majd a végén vissazugrik a kiinduló lapra...

[ Szerkesztve ]

(#24159) Fferi50 válasza slashing (#24158) üzenetére


Fferi50
őstag

Szia!

Az advanced filternek valóban az a "heppje", hogy a célnak - de csak annak - az aktív munkalapon kell lennie.

De, ha csak egy oszlopból szeretnéd kiválogatni az egyedi értékeket, akkor csináld a következőt (2007-es exceltől kezdve működik):

sheets("akarmi").usedrange.columns("A").copy sheets("akarmi").range("D1")
usor=sheets("akarmi").range("D1").end(xldown).row
sheets("akarmi").range("D1:D" & usor).RemoveDuplicates columns:=1,header:=xlNo

És máris megvan az egyedi listád, ez a pár sor működik rejtett munkalapon is.

Üdv.

(#24160) slashing válasza Fferi50 (#24159) üzenetére


slashing
senior tag

Hétköznap nem sok időm lesz rá de hétvégén tuti kipróbálom, KÖSZI!!

(#24161) slashing válasza Fferi50 (#24110) üzenetére


slashing
senior tag

Átültettem az egyik táblázatomba ezt a szépséget. Annyi különbséggel hogy nálam nem cégnév az elsődleges szűrés hanem dátum. És bár nem valószínű hogy elő fog fordulni(90% hogy nem) de sose tudni. Szóval mi a helyzet azzal ha nekem van ismétlődő dátumom?

Vagy ha ezt a táblázatot használjuk akkor egymás alatt ismétlődő cégnevem? mert ugye ilyenkor meg fog egyezni az új keresési tartomány a régivel és feltölti végig ugyan azzal az értékkel az összeset... kijátszaható ez?

Én arra gondolok hogy esetleg még egy ha függvényt ha beleviszünk ami megvizsgálja hogy egyenlő-e az előző sorral akkor adjon hozzá még egyet az indirekthez!?

Egyéb ötlet?

(#24162) Fferi50 válasza slashing (#24161) üzenetére


Fferi50
őstag

Szia!

A "szépség" arra épít, hogy egyedi "azonosítók" vannak...Ami cégnevek esetében eléggé kézenfekvőnek tűnik, hiszen miért is vinném fel kétszer ugyanazt az ügyfelet - ha több telephelye és cime van, akkor hozzáteszem a telephelyét pl.
A dátumokkal kicsit más a helyzet, hiszen események történhetnek azonos napokon bőven. Meg lehet próbálni a ha függvénnyel megnézni, hogy az eredmény egyezik-e az előző értékkel, de ekkor szerintem nem +1 a hozzáadnivaló, hanem az új találat helye.
Másrészt az első oszloppal (igen - nem) szabályozni tudod a kiválasztást szerintem.

Bocsi, most nem néztem meg a gyakorlatban, csak elméletileg futottam egy kört - lehet, hogy hibás következtetésre jutottam.

Üdv.

(#24163) slashing válasza Fferi50 (#24162) üzenetére


slashing
senior tag

jaja egyértelmű hogy az egyediségre épít, egy plusz Ha függvénnyel kijátszaható úgy hogy a holvan +2-őt kap nem 1-et és még a hol.van-on bellül nem a közvetlen előtte lévőt keressük hanem a kettővel előtte lévőt.

Ez már lehet elég lesz. A célunk ezen értéknél a havi max 5-t darab a 8 az már nagyon kirívó és rossz hónap szóval ha egy nap 3 ilyen esemény van akkor az elég gáz... így módosítás után egy napon két ilyen eseményt elbír a képlet 3-t már nem de ezt is ki lehet még tólni egy újabb HA+ÉS függvénnyel :DDDD

[ Szerkesztve ]

(#24164) Fferi50 válasza slashing (#24163) üzenetére


Fferi50
őstag

Szia!

Rendben, a további kísérletezést Rád bízom.

Üdv.

(#24165) pirit28


pirit28
csendes tag

Szép estét !

A kérdésem a következő lenne.

van ez a függvény aminek az eredménye időformátumban 02:00
=VLOOKUP(B143;$A$19:$D$131;4;0)

miért változik meg ha eléírom ennyi az idő, szám formátumúra aminek ugye az értéke 0.083333333 ?

="ennyi az idő "&VLOOKUP(B143;$A$19:$D$131;4;0)

mi hiányzik ebből ?

a választ előre is köszönöm

[ Szerkesztve ]

(#24166) Fferi50 válasza pirit28 (#24165) üzenetére


Fferi50
őstag

Szia!

"="ennyi az idő "&VLOOKUP(B143;$A$19:$D$131;4;0)"

Ez már egy szöveg - szám összefűzés, amire nem érvényes a cellaformátum (mivel az idő az excel számára egy (tört)szám).

Módosíts így
="ennyi az idő "& TEXT(VLOOKUP(B143;$A$19:$D$131;4;0);"időformátum")

Az időformátum helyére tedd a neked szükséges formátumot pl. hh:mm.

Üdv.

[ Szerkesztve ]

(#24167) Mela Kehes


Mela Kehes
addikt

Üdv!

Foci bajnokság táblázatot szeretnék, de csak a fordulók kellenének. Hogyan lehet megcsinálni, hogy mondjuk adott 10 csapatot szétbontson fordulókra? Már ha ezt excelben meg lehet oldani.

Köszi

"Ha lehet menni akkor menjünk, ha meg tökölni kell akkor meg tököljünk."

(#24168) Fferi50 válasza Mela Kehes (#24167) üzenetére


Fferi50
őstag

Szia!

Talán a fordulók párosítását - azaz a sorsolást - szeretnéd megcsinálni?
Vannak erre különféle párosítási táblázatok, ahol csak egy számot kell az adott csapathoz/játékoshoz rendelned és a táblázatból máris kiolvasható a fordulók rendje és párosítása.
sorsolási tábla

Ez ugyan sakkra van, de messzemenően figyelembe veszi az otthoni-idegenbeli (sakkban ugye világos-sötét) játékeloszlás "igazságosságát" is.

Vagy itt van ez a link:kispályás foci
ami nem "kispályás" lehetőségeket kínál.

Üdv.

(#24169) Mela Kehes válasza Fferi50 (#24168) üzenetére


Mela Kehes
addikt

Ez lesz az, köszi. :R

"Ha lehet menni akkor menjünk, ha meg tökölni kell akkor meg tököljünk."

(#24170) pirit28 válasza Fferi50 (#24166) üzenetére


pirit28
csendes tag

Szia !

Kösz a választ !
Akkor egyenlőre 2 megoldás lehetséges, mégpedig vagy elhagyom a szöveget és egy másik cellába sürítem. Vagy mindig egy gépről próbálok nyomtatni, ahol a terület és nyelvi beállítások megfelelnek a kívánt értékeknek.

További szép napot !

(#24171) RootRulez


RootRulez
félisten

sziasztok!

lenne 2 oszlopom, egy amolyan árgenerálós táblázatban

"A" oszlopban a beszerzési ár, "B" oszlopban ez megszorozva és kerekítve 90-es végűre

pl cucc beszer ára 2546 ft (első oszlop) ezt megszorzom 1,20-szal, ez lenne 3055,2 ezt meg is tudom csinálni az excellben "=(A1*B1)", de lehet-e valahogy ezt felkerekíteni automatikusan 3090-re?

köszi!!!

═════════════════════════════════════════

(#24172) PETEE78 válasza RootRulez (#24171) üzenetére


PETEE78
senior tag

Egy lehetőség:

You are being revived

(#24173) PETEE78 válasza RootRulez (#24171) üzenetére


PETEE78
senior tag

nekem megvan, csak nem tudom feltölteni a képet..
hogy kell beilleszteni a lementett képet?

You are being revived

(#24174) RootRulez válasza PETEE78 (#24173) üzenetére


RootRulez
félisten

hozzászólás írásnál ott van a képfeltöltés tallózás gombja, amivel kiválaszthatod a feltröltendő képet, majd ok gomb. ha feltöltötte, megjelenik a beillesztés gomb is

nem muszáj kép, írhatod is. :D

═════════════════════════════════════════

(#24175) PETEE78 válasza RootRulez (#24171) üzenetére


PETEE78
senior tag

A2= összeg
B2=1,2
C2=A2*B2
D2=PLAFON(C2;1)
E2=JOBB(D2;2)
F2=D2-E2
G2=F2+90

You are being revived

(#24176) PETEE78 válasza RootRulez (#24174) üzenetére


PETEE78
senior tag

You are being revived

(#24177) PETEE78 válasza RootRulez (#24174) üzenetére


PETEE78
senior tag

A plafon függvény nem jó :B

You are being revived

(#24178) PETEE78 válasza RootRulez (#24174) üzenetére


PETEE78
senior tag

D2=FIX(C2;0)

oké ez sok plusz oszlop értem én.. :D

You are being revived

(#24179) PETEE78 válasza RootRulez (#24174) üzenetére


PETEE78
senior tag

Ezzel működik?
A2=összeged
B2=1,2
C2=A2*B2
D2=FIX(C2-(JOBB(FIX((A2*B2);0);2)))+90

[ Szerkesztve ]

You are being revived

(#24180) Fferi50 válasza RootRulez (#24171) üzenetére


Fferi50
őstag

Szia!

Próbáld ezt a képletet:
=KEREK.FEL(A1*1,2;-2)-10

Üdv.

(#24181) RootRulez


RootRulez
félisten

ez jó lenne, de

pl 10675-nél, ahol 12810 az 1,2x-es, ott inkább 12790-re vinném, mint a képleted által kapott 12890-re, mert a 12790-hez csak közelebb van

Fferi50-nek ment volna :U

[ Szerkesztve ]

═════════════════════════════════════════

(#24182) RootRulez válasza RootRulez (#24181) üzenetére


RootRulez
félisten

PETEE78 a Te megoldásod is ezt idézi elő... :W 11104 és 11190 lesz, de inkább 11090-nek kéne lennie...

Találtam egy iylet:

=HA((C225*1,2)<2000;KEREK.FEL((C225*1,2)/5;0)*5;HA((C225*1,2)>5000;KEREK.FEL((C225*1,2)/100;0)*100;HA(ÉS((C225*1,2)>=2000;(C225*1,2)<5000);HA(ÉS(ÉRTÉK(JOBB((C225*1,2);2))>50;ÉRTÉK(JOBB((C225*1,2);2))<=90);(KEREK.FEL((C225*1,2)/50;0)*50)-10;KEREK.FEL((C225*1,2)/50;0)*50);HAMIS)))

ez működik, de úgy, hogy 2000 alatt 5 - 10 ft-ra kerekit, 2000-5000 között 50 - 90-re, 5000 felett 100-ra... szal ebből kéne vmit kiszedni. :DDD

[ Szerkesztve ]

═════════════════════════════════════════

(#24183) Fferi50 válasza RootRulez (#24181) üzenetére


Fferi50
őstag

Szia!

Akkor próbáld ezt ki:
=KEREK.FEL(A1*1,2;-2)-HA(KEREK.FEL(A1*1,2;-2)-F32*1,2>50;110;10)

A feltételben szereplő >50-et lehet változtatni.

Üdv.

(#24184) Delila_1 válasza RootRulez (#24182) üzenetére


Delila_1
Topikgazda

Jó volt Fferi első képlete annyi módosítással, hogy a kerek.fel helyett a kerekítés függvényt kell megadni.

=KEREKÍTÉS(A1*1,2;-2)-10

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#24185) Wyll


Wyll
őstag

Az oszlopelrejtés <--> togglebutton összehangolás sikerült, köszönöm!

Most visszatérnék a Delila-val az INDIREKT() függvény-es dologra :)

Kérdésem: ha jól látom az van, ha az INDIREKT() fv argumentuma külső hivatkozás, akkor a hivatkozott fájl meg kell legyen nyitva a (fv lefutásának pillanataiban), hogy működjön, és ne HIV! végeredményt kapjunk.

Na most, ez nekem nem nagyon jó. Pont azt szeretném megvalósítani, hogy egy csomó hálózaton lévő különböző file-ból magától beolvasson egy csomó adatot a linkeken keresztül. Hogyan lehet ezt megcsinálni? :U

Megbízhatóságom: http://phmegbizhatosag.atw.hu/phtabla.php?nev=Wyll

(#24186) Fferi50 válasza Delila_1 (#24184) üzenetére


Fferi50
őstag

Szia!

Milyen igazad van, hiszen a kerekítés függvény magától tudja a kerekítési szabályokat, 50-ig lefelé, 50-től felfelé kerekít! :C

Üdv.
Van az úgy, hogy néha a fától nem látja az ember az erdőt.

(#24187) RootRulez


RootRulez
félisten

Így már valóban jónak tűnik.

Köszönöm szépen mindenkinek a segítséget! :))

═════════════════════════════════════════

(#24188) Delila_1 válasza Wyll (#24185) üzenetére


Delila_1
Topikgazda

Már nem emlékszem, mivel volt kapcsolatban az indirekt. Hátha meg lehet oldani más függvénnyel, vagy makróval a dolgot.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#24189) Fferi50 válasza Wyll (#24185) üzenetére


Fferi50
őstag

Szia!

Nem kell a külső hivatkozásoknál nyitva lennie a hivatkozott fájlnak, csak akkor ugynevezett 3D-s neveket úgy kell használnod, hogy a fájlok teljes - elérési utat is tartalmazó - nevét kell betenned.
Kipróbálhatod a következőt: Megnyitod a cél és a forrás fájlt is. A célfájlban megcsinálod a hivatkozást.
Utána bezárod a forrásfájlt. Azt fogod látni, hogy megjelenik a teljes fájlnév a hivatkozásban. Ha ezt a hivatkozást tovább másolod a következő cellákba, akkor azokban is láthatóvá válik az eredmény. (Azaz ilyen módon "bele lehet látni" meg nem nyitott fájlokba is!)

Én az indirektet ilyen esetekben nem szeretem használni - de ez ízlés kérdése -, inkább azt szoktam csinálni, hogy a képlet összetevőit tárolom különböző cellákban. Szükség esetén a megfelelő cellákba makróval beírom a képletet (pl. a fájl megnyitásakor), majd azonnal be is "helyettesítem" az értékükkel.

Tehát az adott cellára konkrétan írom be, cella.formula="Xyfájl.munkalapja!A1".Természetesen a formulában, ha kell szerepel az aposztróf és a szögletes zárójel is (általában kell).
Ha minden cellának megvan a képlete és az eredménye, akkor átváltom értékre.

Üdv.

[ Szerkesztve ]

(#24190) RootRulez válasza RootRulez (#24187) üzenetére


RootRulez
félisten

Esetleg arra van mód, hogy 30-tól már felfelé kerekítsen, ne csak 50-től? :U

[ Szerkesztve ]

═════════════════════════════════════════

(#24191) Fferi50 válasza RootRulez (#24190) üzenetére


Fferi50
őstag

Szerintem akkor a feltételt ne >50-re tedd, hanem >70-re, az én utolsó képletemben.

Üdv.

(#24192) PETEE78 válasza RootRulez (#24187) üzenetére


PETEE78
senior tag

nem akarok senkit fárasztani, de nekem így is működik "röviden és tömören" :D

=HA((ÉRTÉK(JOBB((FIX((A2*1,2);0));2)))>50;(FIX((A2*1,2)-(JOBB(FIX((A2*1,2);0);2)))+90);(FIX((A2*1,2)-(JOBB(FIX((A2*1,2);0);2)))-100))

You are being revived

(#24193) Wyll válasza Fferi50 (#24189) üzenetére


Wyll
őstag

Igen, ez a "belelátós" módszer a 3D-s névvel (nem tudtam hogy így hívják) valóban működik (és én is pont ezt szeretném, és így is csináltam), de csak amíg be nem zárom a file-t. A legközelebbi megnyitáskor viszont rákérdez, hogy frissítse-e a hivatkozásokat, és ha ekkor nincs megnyitva a hivatkozott file, már HIV! lesz a hivatkozás értéke. :U
Gondolom pont ezért csinálod, hogy behelyettesíted az értékével.

Viszont mi van, ha időközben megváltozott az az érték? Pont ez lenne egy hivatkozás értelme, hogy mindig a aktuális értéket tartalmazza. Pl. minden megnyitáskor újrafrissítem ezeket makróból?

[ Szerkesztve ]

Megbízhatóságom: http://phmegbizhatosag.atw.hu/phtabla.php?nev=Wyll

(#24194) Fferi50 válasza Wyll (#24193) üzenetére


Fferi50
őstag

Szia!

"Pl. minden megnyitáskor újrafrissítem ezeket makróból?"

Ez így van, akkor nincs mire rákérdeznie, ha nincs élő külső hivatkozás, a frissítés pedig a nyitási procedúrába belefér.

De lehet erre egy gombot is kijelölni /vagy billentyűkombiációt/, ami szintén végrehajtja a frissítést kérésre.

Üdv.

(#24195) Fferi50 válasza RootRulez (#24190) üzenetére


Fferi50
őstag

Vagy a kerekítés függvénynél hozzáadsz az eredményhez +30-at és azt kerekíted.

(#24196) Fferi50 válasza Wyll (#24193) üzenetére


Fferi50
őstag

Még ezeket tenném hozzá:

A megnyitáskori frissítésre rákérdezést "el lehet nyomni" és le lehet tiltani a frissítést.

A hivatkozásokat meg lehet változtatni makróból is, meg a nyitott munkafüzetben menüből is.

Természetesen az értékké alakítás csak akkor járható út, ha nem gyakran frissülő adatkapcsolatokról van szó.

Mivel én ilyen célra nem használom az indirekt függvényt, így nem is tudom megmondani, hogy nem nyitott forrásfájlnál mit csinál. Ha azt mondod #HIV hibát "eredményez" , az már egy ok arra, hogy ne is használd, hiszen soha nem tudhatod, hogy nyitva van-e a forrásfájl, illetve akkor arról kell makróból "gondoskodni", hogy legyen mindegyik nyitva.

Ha tudod, hogy milyen forrást szeretnél mire változtatni - márpedig tudod, hiszen az "indirekt" cella tartalmát ismered változás előtt és azt is, amire szeretnéd cserélni, akkor működik a cellákban levő "direkt hivatkozás" cseréje is "egyszerű" range.cserél metódussal. Az "indirekt" értéket tartalmazó cellát ebben az esetben a régi hivatkozás forrásaként lehet használni, de nem ezzel kell összeállítani a cella képletét.

Üdv.

(#24197) PETEE78 válasza Fferi50 (#24191) üzenetére


PETEE78
senior tag

nem akarok kukacoskodni :DD
És ha 100 Ft alatt van a beszerzési ár, mondjuk 40Ft?

You are being revived

(#24198) Fferi50 válasza PETEE78 (#24197) üzenetére


Fferi50
őstag

Szia!

Akkor ingyen adja tovább :K

Üdv.
(De ha 30-tól már felfelé kerekít, akkor a 40 forintos áru 90 forintos lesz...)

[ Szerkesztve ]

(#24199) PETEE78 válasza Fferi50 (#24198) üzenetére


PETEE78
senior tag

:DDD

You are being revived

(#24200) RootRulez válasza Fferi50 (#24191) üzenetére


RootRulez
félisten

Ha erre gondoltál: =KEREK.FEL(A1*1,2;-2)-HA(KEREK.FEL(A1*1,2;-2)-F32*1,2>50;110;10), akkor abban mi az F32?

[ Szerkesztve ]

═════════════════════════════════════════

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)
Copyright © 2000-2024 PROHARDVER Informatikai Kft.