- Újabb államok perelik az Apple-t, mert sok pénzt szed ki a vevőkből
- SUSE Linux
- Meggyőző arcjátékkal reagál a kínai humanoid robot
- Windows 11
- Milyen routert?
- Alternatív kriptopénzek, altcoinok bányászata
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Otthoni hálózat és internet megosztás
- Max
- Béta iOS-t használók topikja
-
IT café
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
-
istvankeresz
aktív tag
válasz Fferi50 #50399 üzenetére
Szia!
Igen, először MsgBox-al ellenőriztem a ciklusban a változó értékeit, észrevettem, hogy szépen kiírja mindet, de egymást felülírva csak az utolsót írta ki.
Köszi megpróbálom összefűzni!
Delila_1: Köszi ez is nagyon jó megoldás. Kipróbálom mindkettőt.
Más:
Olyan képlet van ami idő formátumolkból pl (08.00 és 16.00) -ból kiszámolja, hogy 8 órát dolgozott valaki? Félórás munkarendel is kellene működni, azaz aki 08:30-tól 16:30-ig dolgozik, akkor arra is kiadja a 8 órát?[ Szerkesztve ]
XBOX ONE GT: istvankereszt79
-
Pityke78
őstag
Sziasztok!
Egy olyan kérdésem lenne, hogy van A, illetve B oszlopokban különböző adatok és ha erre rádobok egy pivotot, akkor hogy tudom úgy kimutatni, hogy az A oszlop adatait teszem a pivot Sorok mezőjébe, a B oszlopot a Értékek mezőjébe, de az értékeket úgy mutassa ki, hogy hány különböző érték van a B oszlopban az adott A értékhez. Tehát nem a darabszámra vagyok kíváncsi, hanem hogy hány darab különböző érték tartozik az A-oszlophoz a B-ben.
Remélem érthetően írtam le.
Előre is köszi a választ!
-
TillaT
junior tag
Sziasztok! Megint elakadtam, s hiába kutakodok, nem jutok előrébb.
Hogyan lehet(ne) makrórögzítéssel felvenni egy munkafüzet menüszalagjának testreszabását? Előre is köszönöm, ha valaki jó irányba terel. -
Fferi50
őstag
válasz TillaT #50404 üzenetére
Szia!
Sajnos az nem műxik így. A Ribbon szerkesztéssel tudod meghatározni, mi legyen a menüszalagon.
[itt találhatsz segítséget hozzá]
Üdv- -
TillaT
junior tag
válasz Fferi50 #50405 üzenetére
Szia!
Köszönöm. Mielőtt jobban beleásnám magamat inkább egy gyors kérdés.
Jól sejtem, hogy ha pl. e-mailen keresztül elküldök a gépemről egy átalakított menüszalagos munkafüzetet, akkor az a címzett gépén nem az általam testreszabott menüszalaggal jelenik meg, hanem a címzett gépén meglévő Excel beállításoknak megfelelően?[ Szerkesztve ]
-
-
ny.janos
tag
válasz Fferi50 #50410 üzenetére
A DARABHATÖBB függvény alkalmazása remek megoldás (nekem magamtól nem jutott volna eszembe, a DARABTELI-vel próbálkoztam volna, de mint rájöttem az nem alkalmas arra, hogy
DARABTELI($A$2:$A$7&$B$2:$B$7;A2&B2)
formában használjam).
Ha megengeded kiegészíteném egy ötlettel, mely esetén nem kell a második segédoszlop:=1/DARABHATÖBB($A$2:$A$7;A2;$B$2:$B$7;B2)
Ez esetben értelemszerűen az összeget kell használni a kimutatásban a maximum helyett.[ Szerkesztve ]
-
Pá
addikt
Sziasztok!
Van egy ilyen kódom, ami azt csinálja, hogy kijelöl egy 4 oszlop széles range-t és aztán a kijelölt range-t szépen átmásolja egymás mellé és teszi mindezt (itemnbr - 2) alkalommal.
Sub PAYMENT_SETUP()
Dim itemnbr, i As Integer
Application.ScreenUpdating = False
Range("CO1:CR97").Select
Selection.Copy
Range("CO1").Select
itemnbr = Application.WorksheetFunction.Max(Range("CG:CG"))
Let i = 2
Do While i < itemnbr
ActiveCell.Offset(, 4).Activate
ActiveSheet.Paste
i = i + 1
Loop
Application.ScreenUpdating = True
End Sub
Nincs baj bele, jól is működik. Az egyetlen gond hogy nagyon lassú, mivel konkrétan copy&pastelgeti a sorokat. Már a screen update-t is azért kapcsoltam ki, hogy ne kelljen végignézni, de ettől nem lett gyorsabb sajnos.
Szóval van erre a copy&pastre valami alternatív megoldás? Jah az fontos, hogy az eredeti mezőben, amit másolgatok, formulák vannak, relatív hivatkozásokkal, amiket jó lenne megtartani.
[ Szerkesztve ]
''Annyira vagyunk egészségesek, amennyire a gondolataink humánusak.''
-
Fferi50
őstag
Szia!
A sok Select és Activate utasítás bizony nem szerencsés. A másolást egy lépésben is meg lehet csinálni így:
Range(forrás).Copy Destination:=Range(cél)
Nem kell hozzá semmilyen ciklus!
Esetedben a javaslat:Sub masolo()
With Range("CO1:CR97")
.Copy Destination:=Range("D1").Resize(.Rows.Count, Application.WorksheetFunction.Max(Range("CG:CG")) * .Columns.Count)
End With
End Sub
A D1 cella helyett írd be annak a cellának a címét, ahova kezdődjön a másolat elhelyzése.
Továbbá javaslom, hogy teljes CG oszlop helyett egy meghatározott tartományt vegyél fel a MAX függvényhez - olyan nagyságút, amit nagy biztonsággal nem lépnek át az adataid - ne kelljen mindig milliós cellaszámot figyelni.
Még egy megjegyzés: A másolás paraméterei úgy vannak összeállítva, hogy más tartomány esetén is megfelelő sort és oszlopot másol át, a kívánt mennyiségben.
Üdv.[ Szerkesztve ]
-
-
Pá
addikt
válasz Fferi50 #50415 üzenetére
Átírogattam a kódjaimat a tiédre (sajnos jó sok volt belőlük ), tényleg gyorsabb így és elegánsabb is.
Kérdés, hogy át lehet valahogy alakítani úgy, hogy csak a formulákat másolja?
Igazából annyi a lényeg, hogy a formázást ne bántsa a cél cellákban.''Annyira vagyunk egészségesek, amennyire a gondolataink humánusak.''
-
rovgab
csendes újonc
Látom ez a topik még mindig megy kb másfél évvel ezelőtt kértem itt segítséget raktárkészletek excelben történő kezelésére és azóta egy olyan viszonylag komplex táblázatot sikerült szerkesztenem, hogy a munkaköröm fizikai pakolászós része lecsökkent 1-2 órára. Azóta is hálás vagyok nektek! És köszönöm még egyszer.
-
Delila_1
Topikgazda
A képletek másolásához a PasteSpecial kell.
Sub masolo_1()
Dim usor As Long
usor = Range("CO" & Rows.Count).End(xlUp).Row
Range("CO1:CR" & usor).Copy
Range("D1").PasteSpecial xlPasteFormulas
End SubItt a másolatok számát kell még meghatároznod, az meg már megy.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
istvankeresz
aktív tag
Üdv!
Készítettem egy képletet, ami kiszámolja a munkaórákat. Ha szabin van a kolléga, akkor nyolc órának számolja a munkaórát. Ha például hétvégén nem dolgozik és nincs például egészségügyi szabadságon, akkor 0 órának számolja a munkaórát. Ez teljesen jó, viszont azt szeretném, ha nulla a munkaóra abban a sorban, ahol nincs valamilyen távolléten, és nincs érkezési idó és távozási idő jelölve, akkor hagyja üresen a mezőt.
Ezt a képletet készítettem:
=HA(ÜRES(B4);(D4-C4)*24;HA(ÜRES(C4);8;" "))
Kép hozzá:
Első sor:
Szabadságon van a kolléga, nyolc munkaőrának számolja, rendben
Második sor:
Munkavégzésen van a kolléga, kiszámolja a ledolgozott időt, rendben
Harmadik sor:
Nem dolgozik, nincs semmilyen távolléten, ilyen pl. a hétvége, nulla munkaidót számol, de a nulla eredményre üres cellát szeretnék.
Negyedik sor:
Ilyen nem lehet, szabadságon van és dolgozik is. Viszont itt eltünteti a cella értékétAmi még fontos, hogy lehet munkavégzés hétvégén is, így valami olyan univerzális képlet kell, ami az egész E oszlopra jó.
Köszi!
XBOX ONE GT: istvankereszt79
-
Delila_1
Topikgazda
válasz istvankeresz #50420 üzenetére
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
istvankeresz
aktív tag
válasz Delila_1 #50421 üzenetére
Szia!
B4-ben nem csak "SZ" érték lehet. Ott két esetet kell figyelni: vagy semmi, vagy akármi (SZ, ESZ, MSZ, stb) lehet benne.
Munkaóra az direkt numerikus formában van, hogy könnyen számítható legyen az az oszlop alján egy havi összesítésként.
A B7-tól D7-ig pedig nem releváns, mert aki valamilyen távolléten van, az nem dolgozik, tehát B7 kizárja a C7, C8-t és fordítva.
XBOX ONE GT: istvankereszt79
-
Delila_1
Topikgazda
válasz istvankeresz #50422 üzenetére
Azt elfelejtetted megadni, hogy mi legyen a vagy semmi, vagy akármi (SZ, ESZ, MSZ, stb) esetében.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
istvankeresz
aktív tag
válasz Delila_1 #50423 üzenetére
Az alapgondolatom az volt, hogy egyszerübb az üres cellát figyelni feltételnek (semmi) mint, ha valamit beleírnak, mert több érték is lehet amit beírnak, nem csak az a három, amit felsoroltam. Vagy akár félreütik és nem ESZ lesz hanem EZS véletlenül a cella (jelen esetben a B4) étéke.
Szóval a képletem teljesen jó ahog csináltam, csak abban az esetben nem működik jól, ha B6 üres valamit C6 és D6 is üres. Ilyenkor ne nullát irjon ki az E6-ba, hanem üres cella legyen.
SzerK:
Gondolatmenetem:
Ha B4 üres akkor munkaórát számpl az igaz ágon. A hamis ágon újabb feltételel vizsgálja, hogy ha a C4 üres, azaz nincs érkezési idő, akkor írjon nyolcat, ha hamis, akkor semmit.De ez így nem jó.
[ Szerkesztve ]
XBOX ONE GT: istvankereszt79
-
Delila_1
Topikgazda
válasz istvankeresz #50424 üzenetére
Akkor csak annyi a feladatod, hogy a cellaformátumot írd át.
0,0;;Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz istvankeresz #50426 üzenetére
Érdemes rákeresni a cellaformázásokra, sok feladatot meg lehet oldani velük.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
zsoci0914
csendes tag
Sziasztok!
Olyan képletet szeretnék megalkotni, csak cseppet elakadtam, hogy:
Ha I10 cellában van érték (dátum) és F10 cella üres akkor az értékem = E10 cellával
Ha I10 cellában van érték (dátum) és F10 cella is érték (szám) akkor az értékem = F10+J10
Ha I10 cella üres akkor az értékem 0 vagy üres.
Ebben esetleg kérhetem segítségeteket?
Köszönöm. -
Flowtation
őstag
Sziasztok!
Segítséget szeretnék kérni. A mentési rendszerünk minden generál egy excel fájlt adott időben, pl. reggel 6kor. Ez egy db munkalap, ezt szeretném beolvastatni egy másik excelbe, amiben máshonnan is összeszedett adatok vannak. De mivel a fájlnév minden nap új lesz, ezért az új lekérdezés funkcióval csak egy adott fáljt tudok importálni. Az lenne a kérdésem, hogy megoldható-e, hogy mindig pl a legfrissebb dátumú fáljt olvassam be? Esetleg más módon?
Köszönöm a segítséget előre is!Keresek: D-link covr-1102 2 pack routert.
-
Fferi50
őstag
válasz Flowtation #50431 üzenetére
Szia!
Az Application.FileDialog tulajdonságot nézd meg légy szíves. Itt kiválaszthatod, melyik fájlt szeretnéd beolvasni.
De a FileDateTime(TeljesFilenév) megmondja, mikor készült a fájl - viszont ebben az esetben minden fájlon végig kell menned, hogy megkapd a legfrissebb dátumot.
Üdv.[ Szerkesztve ]
-
bepken
veterán
sziasztok!
egy nagyon amatőr kérdéssel fordulnék hozzátok
A B
1 1
1 1
0
0
1 2
2 3
0
0
2 4
2 4
a fenti mintának megfelelően kellene előállítanom egy B oszlopot az A oszlop alapján
tehát a B oszlopban egy számláló növekedjen minden alkalommal, amikor az A oszlopban változik az érték KIVÉVE akkor, ha az A oszlopban 0 érték szerepel.=HA(A2=A1;B1;B1+1)
ezzel eljutottam odáig, hogy ha változik az érték, akkor növeli az értéket eggyel...
=HA(A2=A1&A2<>0;B1;B1+1)
ez viszont (egészenbiztosanhülyeség ) nem működik, fogalmam sincs egyáltalán szabályos e a függvény....
ja igen: fontos, hogy függvénnyel kell megoldanom sajnos :/
köszi előre is!
[ Szerkesztve ]
╔═══════ "Csak egy visszatérés létezik és az nem a királyé...hanem a JEDIÉ!" ═════╗ ╚════════════════ Xiaomi Mi A1 ═════ Huawei Nova 5T ═════════════╝
-
bepken
veterán
válasz bepken #50433 üzenetére
hmmm közben sikerült úgy "megoldanom", hogy ha nulla az érték szerepel A oszlopban, akkor B oszlop értékét nem növeli....de hátha van ennél elegánsabb megoldás is
ja és akkor már még egy kérdés: a kapott számértéket szeretném hozzáfűzni egy szöveghez (pl.: "szoveg_") és a problémám az, hogy minden sorral újra és újra összefűzi, amikor ugyebár az A oszlopban nincs változás.
szoveg_1
szoveg_1szoveg1
szoveg_1szoveg_1szoveg_1
ezt hogyan tudom elkerülni?
╔═══════ "Csak egy visszatérés létezik és az nem a királyé...hanem a JEDIÉ!" ═════╗ ╚════════════════ Xiaomi Mi A1 ═════ Huawei Nova 5T ═════════════╝
-
Fferi50
őstag
válasz bepken #50434 üzenetére
Szia!
A B1 cellába írd be az 1 számot.
A B2 cella képlete:=HA(A2<>0;HA(A2=A1;B1;MAX($B$1:$B1)+1);"")
Ez húzható lefelé.
A szöveget pedig cellaformázással adhatod meg:
Jobb egérgomb - cellaformázás - egyéni - Formátum: "Szöveg" ###
Ez azért jó, mert csak a megjelenítést változtatja, számolni ugyanúgy lehet vele, mert szám marad.
Üdv.[ Szerkesztve ]
-
bepken
veterán
válasz Fferi50 #50435 üzenetére
köszi szépen, tökéletes! én a fenti megoldásommal csak segédoszlop segítségével tudtam elérni, hogy úgy viselkedjen, ahogy szeretném.
a cellaformázás megoldásban nem vagyok még biztos, mert az összefűzött szöveg értékkel kell tovább dolgoznom majd (és ha jól értem, a cell értéke szám marad)
╔═══════ "Csak egy visszatérés létezik és az nem a királyé...hanem a JEDIÉ!" ═════╗ ╚════════════════ Xiaomi Mi A1 ═════ Huawei Nova 5T ═════════════╝
-
Fferi50
őstag
válasz bepken #50436 üzenetére
Szia!
Ha a szöveggel dolgoznod kell, akkor azt javaslom, külön oszlopba kerüljön a szöveg. Ha ugyanabban a cellába van szám és szöveg is, akkor a sorszámos képlet nem működik megfelelően, hiszen számot szöveggel nem tud összeadni.
A külön oszlopos összesítés például mehet SZUMHA függvénnyel vagy Kimutatással.
Üdv. -
Greezlee
újonc
Sziasztok!
Excel v2108-öt használok, és nem működik a "ctrl + ;" kombináció, amivel az aktuális dátumot tudnám beszúrni, és baromi bosszantó, nem jövök rá miért van ez. Egy hibaüzenetet dob, hogy "nincs ilyen cella". A "ctrl+shift+.", tehát a pontos idő beszúrása működik.
Valakinek volt hasonló? Mi oldotta meg?Köszi a segítséget!
-
föccer
nagyúr
Sziasztok!
Két kérdésem lenne.
1: egy cella tartalmát be lehet-e rakni az oldal fejlécébe makró nélkül? Keresgéltem, de nem találtam erre megfelelő kódot, beállítást
2: a másikat már meg is oldattam (pdf kimeneten nyomtatom a riportot és hogy ne kelljen a munkafüzetet oldalanként mergelni. Az összes kijelölt munkafüzeten végzem a nyomtatást, akkor 1 doksiba menti le a riportot. De jó
Köszi!
Üdv, föccer
Építésztechnikus. Építőmérnök.
-
föccer
nagyúr
válasz Delila_1 #50443 üzenetére
Köszönöm. Nagy kár érte.
A jelentés egy része 2-3 oldalas rész elemzésekből áll, amelyek egymás mögé vannak a doksiba és ezekre szerettem volna kirakni, hogy egyértelműbb legyen, hogy melyik oldal, melyik részhez tartozik. Majd lapozgatnak
üdv, FG
Építésztechnikus. Építőmérnök.
-
föccer
nagyúr
Napi coppantyú. Nem tudom, h futottatok-e már bele..
Darab2(szűrő()) kombóval számolom meg, hogy adott tömb bizonyos elemei mennyien vannak. Szép és jó.
Viszont ha üres a szűrő által visszaadott tömb, a Darab2 akkor is 1-et ad vissza. Így nem tudom eldönteni, hogy a szűrt tömb 1 elemű, vagy 0 elemű...
Tehát az egészet be kell csomagolnom egy HA feltételbe, ahol a feltétel vizsgálatnál ki kell szednem a szűrő tömb első elemét egy index-el, ami ha a szűrőben megadott üres tömböt jelölő paraméterrel egyenló, akkor 0-at ad, egyébként meg mehet a darab2.
Fu de utálom néha az excel működését
HA(INDEX(SZŰRŐ(;;"NULLA");1)="NULLA";0;DARAB2(SZŰRŐ()))
+ kiíratást eldöntő feltétel a hibakezeléssel és a tényleges művelet amit el kellene végezni
HA(B5="";"";HA(INDEX(SZŰRŐ();1)="NULLA";0;DARAB2(SZŰRŐ))/B5) ;p
ps: az előző fejlécbe való kiíratást megoldottam minden oldalon megjeleített sorokkal.
üdv, föccer
Építésztechnikus. Építőmérnök.
-
bepken
veterán
válasz Fferi50 #50437 üzenetére
végül az ÖSSZEFŰZ() függvényt használtam, ami segédoszlopból fűzi hozzá a kiszámított számértéket a "szoveg_" stringhez
nagyon szépen köszi még egyszer a segítséget!
╔═══════ "Csak egy visszatérés létezik és az nem a királyé...hanem a JEDIÉ!" ═════╗ ╚════════════════ Xiaomi Mi A1 ═════ Huawei Nova 5T ═════════════╝
-
spe88
senior tag
válasz the radish #50000 üzenetére
Sziasztok!
Tömbképletet akarok használni, de a HA fv.-nél elakad. Nem tudja értelmezni, hogy csak az üresekre szűrjön. Ezt, hogy lehet kikerülni?
Köszönöm
HAHIBA(INDEX($AQ$56:$AQ$86;KICSI(HA($AQ$56:$AQ$86<>"");SOR($AQ$56:$AQ$86)-SOR(AQ55);"");s56));"")
Spóroljunk! Kerül, amibe kerül!
-
spe88
senior tag