Hirdetés

2024. április 26., péntek

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

(#42001) Fferi50 válasza 3DFan (#42000) üzenetére


Fferi50
őstag

Szia!
Egyetlen cellába sem kell írnod semmit!
Az általad bemutatott minta alapján a feltételes formázást az alábbiak szerint tudod megtenni:
Kezdőlap - feltételes formázás - új szabály -
Ezután a formázandó cellák kijelölése képlettel:

Kiválasztod a formátumot, majd OK.
A formázandó terület kiválasztásához:

Kiválasztod a szabályt és beírod az érvényességi területet:

Ha a képletben nem az A1 cella lenne, akkor a Szabály szerkesztése gombra kattintva átírod A1- a sor és oszlop függvény paraméterét.
Majd OK vagy/és Alkalmaz.

Üdv.

(#42002) Delila_1 válasza 3DFan (#41998) üzenetére


Delila_1
Topikgazda

Kijelölöd a B1: K1 tartományt, majd felt. formázás képlettel, ahogy Fferi írta. A képlet
=B1=$O$2, megadod a kék hátteret.

Kijelölöd az A2: A11 tartományt, itt a képlet =A2=$N$2, szín narancs.

Most a B2: K11 terület képlete következik, ez =B2=$P$2, szín zöld.

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

(#42003) karlkani válasza Fferi50 (#42001) üzenetére


karlkani
aktív tag

Nála ez a helyes képlet: =ÉS(SOR(A1)=$N$2;OSZLOP(A1)=$O$2)

(#42002) Delila_1
A B2 : K11 területre nem jó a képleted, mert ilyenkor az összes találatot kiszínezi, ezt akarja elkerülni.

[ Módosította: Intruder2k5 ]

(#42004) bucihost


bucihost
senior tag

Sziasztok!

Adott egy O365 excelben megírt HAELSŐIGAZ képlet. Tökéletesen működik, viszont ma O2016 excelben megnyitom a munkafüzetet akkor nem működik a képlet, valamint HAELSŐIGAZ helyett _xlfn.IFS jelenik meg. Hogyan lehetne orvosolni a problémát? FX-ben rákerestem, de nem létezik ilyen függvény.... :F

(#42005) 3DFan


3DFan
aktív tag

Köszönöm a segítséget mindenkinek! karlkani képletével működik.

[ Szerkesztve ]

(#42006) karlkani


karlkani
aktív tag

(#42005) 3DFan
Nem az enyém, Fferi50 képlete, én csak a tábládhoz igazítottam.

Ebédrendeléshez készítettem egy táblázatot. Van egy cellám, ami az aktuális hét, hétfő-péntek dátumát tartalmazza, jelenleg kézzel beírva (10.21-10.25). Készítettem hozzá egy képletet: =SZÖVEG((MA()-HÉT.NAPJA(MA();3));"h.n.") & "-" & SZÖVEG((MA()-HÉT.NAPJA(MA();16));"h.n.")
Ezt hogyan kellene beírni makróba?

(#42007) Fferi50 válasza karlkani (#42006) üzenetére


Fferi50
őstag

Szia!

Például így:
Range("A1").Formula="=TEXT((TODAY()-WEEKDAY(TODAY(),3)),""h.n."") & ""-"" & TEXT((TODAY()-WEEKDAY(TODAY(),16)),""h.n."")"

Üdv.

(#42008) Delila_1 válasza karlkani (#42006) üzenetére


Delila_1
Topikgazda

Sub mm()
    Dim tol As Date, ig As Date
    tol = Date - Weekday(Date, 3)
    ig = tol + 4
    
    Debug.Print Format(tol, "mm.dd.") & "-" & Format(ig, "mm.dd.")
End Sub

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

(#42009) Fferi50 válasza bucihost (#42004) üzenetére


Fferi50
őstag

Szia!
Bizony, a 2016-os Excelben nincs ilyen függvény. Helyette szép beágyazott HA függvényeket kell összerakni, arra viszont vigyázni kell, hogy helyes sorrendben legyenek a feltételek megadva.
Pl. =HA(A1>80;"A";HA(A1>70;"B";HA(A1>60;"C";"D")))

Üdv.

(#42010) Fferi50 válasza karlkani (#42003) üzenetére


Fferi50
őstag

Szia!
Hát igen, figyelmetlen voltam, nem néztem meg rendesen a szorzás helyét...
Köszi, hogy kijavítottad.
Üdv.

(#42011) karlkani válasza Fferi50 (#42007) üzenetére


karlkani
aktív tag

& (#42008) Delila_1

Köszönöm szépen! :R

(#42012) bucihost válasza Fferi50 (#42009) üzenetére


bucihost
senior tag

Köszi, akkor azt hiszem inkább frissítem a kliens gépen is 2016-ról. Túl hosszú így is a képlet, ha minden HA ra lenne átírva akkor még hosszabb lenne....

(#42013) Fferi50 válasza bucihost (#42012) üzenetére


Fferi50
őstag

Szia!

Az FKERES függvény 4. paraméterét ha IGAZ-ra állítod, akkor alkalmas arra, hogy táblázatban keressen, ehhez emelkedő sorrendbe kell rendezni a táblázatot - és még szöveges keresésben is működik.
Az előző hsz-ban levő példához a táblázat és a képlet:

Ez biztosan működik minden verzióban, mert a függvény is régi már.

Üdv.

[ Szerkesztve ]

(#42014) bucihost válasza Fferi50 (#42013) üzenetére


bucihost
senior tag

Az a baj, túl összetett a képlet.
Egy bérkalkulátor táblázatról van szó.
3 műszakos munkarend van, az alábbi adatokból számol a táblázat.
- melyik műszak (műszakonként eltérő pótlék)
- van e túlóra, ha igen mennyi. (Első 2 órára x% jár, minden további órára y%)
- hétvége vagy sem (erre szintén külön pótlék van)
Minden automatán van számolva
Műszakszorzó beillesztése: (ez még meg oldható FKERES-sel, általad leírt módon)
=HAHIBA(HAELSŐIGAZ(G4=1;1;G4=2;1,5;G4=3;1,5);)
Túlóra díj kiszámítása:
=HAHIBA(HAELSŐIGAZ(G4=1;HA(F4>2;2*$G$1*1,5+(F4-2)*$G$1*1,75;F4*$G$1*1,5);G4=2;HA(F4>2;2*$G$1*2+(F4-2)*$G$1*2,25;F4*$G$1*2);G4=3;HA(F4>2;2*$G$1*2+(F4-2)*$G$1*2,25;F4*$G$1*2));)
és ugye itt bonyolódik a helyzet, mert ennek a képletnek figyelembe kell vennie minden kritériumot :(

(#42015) bara17


bara17
tag

Sziasztok!

Lehet láma kérdés, de a billentyűparancsokat hol lehet átállítani az Excelben (Office 2016). Korábba verziókban a ctrl+L szépen lemásolta a felette lévő cellát, de a 2016-os verzióban már nem működik.

Köszönöm.

(#42016) ny.janos válasza bara17 (#42015) üzenetére


ny.janos
tag

A Ctrl+L billentyűparancs már a régebbi verziókban is a táblázat létrehozása párbeszédpanelt nyitotta meg. Amit írsz az egy makró lehetett. Billentyűparancs módosítása nem hiszem, hogy lehetséges.

Makró helyett: ha van olyan parancs az excelben, ami az aktuális cella feletti cella tartalmát másolja (én nem tudok ilyenről), akkor azt a parancsot felveheted a gyorselérési eszköztárra. A gyorselérési eszköztárra felvett parancsok közül az első tíznek a gyorsbillentyű kombinációja: Alt+1, Alt+2 stb.

(#42017) Fferi50 válasza bara17 (#42015) üzenetére


Fferi50
őstag

Szia!
Magyar verzióban működik a Ctrl + l másolás.
File - beállítások - speciális fülön a kitöltőjel használatának és az egérrel való húzás engedélyezésének kockáját bepipálva a cella jobb alsó sarkán levő pöttyöt megfogva a cella adatai másolhatók húzással.

Üdv.

(#42018) Fferi50 válasza bucihost (#42014) üzenetére


Fferi50
őstag

Szia!
Ezt találtam ki, nézd meg, hogy működőképes-e nálatok:

A táblázat első oszlopa tartalmazza a 2 órás határt - ezt még jobban lehet finomítani 2,00001 -re akár - a további 3 oszlop az egyes műszakokhoz tartozó műszakpótlékot.
Persze itt még a 7vége nincs benne, de szerintem az is megoldható (pl ha hétvége, akkor a + 3 oszlop tartalmazza azt a pótlékot és a G oszlopban levő értékhez nem 1, hanem 4 a hozzáadás).
(Nem mellesleg, így csak a szorzószámokat kell esetleg változtatni, nem kell átírni az összes képletet.)

Üdv.

[ Szerkesztve ]

(#42019) bara17 válasza Fferi50 (#42017) üzenetére


bara17
tag

Köszi ez be van pipálva, használom is, de a ctrl + L nekem nem működik, pedig magyar Excelt használok és sokszor nekem praktikus volt ez a kombináció. :)

(#42020) Fferi50 válasza bara17 (#42019) üzenetére


Fferi50
őstag

Szia!
Nézd meg a vonatkozó helpet - billentyű parancsok címszó alatt.
Az én helpem a Ctrl + D parancsot írja a legelső cella lefelé másolásához. (DE ez nálam nem műxik, hanem a Ctrl + L csinálja ezt.)
2016-os verzió, magyar.
Üdv.

(#42021) TigerCat


TigerCat
nagyúr

Sziasztok!
A 100%-os nagyítás értékét lehet módosítani valahogy? Mac-en nagyon apró, így ha elmentem 125%-on, az túl nagy Windows alatt és fordítva. Szóval jó lenne valamilyen megoldást találni az alapértelmezett értékre. Van ilyen lehetőség szerintetek?
Köszi!

♛ Kanapékirály Bútor és Kanapé Webáruház »»» https://kanapekiraly.hu

(#42022) vmk


vmk
tag

Sziasztok.

Nem tudom, hogy jó helyen járok-e a problémámmal.
Az egyik kolléganőmnél van olyan hiba, hogy munkalapok nyomtatásánál különböző felhasználónévvel küldi ki a program (vagy driver?) a dokumentumot.

Tehát a nyomtató egy Konica Minolta C280. Be van állítva egy felhasználónév pl "kifli".
A kolléganő Windows-os felhasználóneve mondjuk "zsömle".
Azt vettem észre, hogy a dokumentumon belül bizonyos munkalapoknál a "kifli"-vel megy ki a nyomtatás (és sikeres is), bizonyosaknál pedig a "zsömle"-vel és ezt visszadobja a nyomtató.
Office 2016 Otthoni és vállalati verziójú a programcsomag.

Találkozott már valaki ilyesmivel? Mi lehet a gond?

(#42023) BalanceR


BalanceR
addikt

Sziasztok,
Egy kicsit összetettebb, kérdésem lenne a gurukhoz...
Megoldható-e, hogy egy munkalap automatikusan frissítsen bizonyos adatokat egy publikus weblapról?
A következőről lenne szó:
árukereső.hu -s árakat kellene automatikusan levadásznia, és beletenni a táblába érékesítő szerint....
Pl:
Van egy táblám cikkszámokkal az első oszlopban, arra kellene megoldás, hogy mondjuk egy másolható képlet, vagy makró csinálja azt , hogy keresést indít az árukeresőn az első oszlopban található cikkszámra, (ez ugye meg egy jól paraméterezett [hiperhivatkozás]-al ) az első találati oldalt megnyitja, és az ott lévő adatokat bepakolja a cikkszám melletti oszlopokba.
Pl:

cikkszám | MediaMarkt | Tesco | ebolt |
1254568 | 12.99FT | 11.99Ft | 13.25Ft |
188568 | 26.99FT | 26.99Ft | 26.25Ft |


Ilyesmire valakinek ötlete, vagy esetleg gyakorlati tapasztalata?

Előre is köszi. :R

#Raspberry #Orangepi #HassOS #Esp32

(#42024) Peterhappy


Peterhappy
őstag

Sziasztok,

Feladom :)

Olyan riportot tudok generálni, amelyben a következő módon szerepelnek az időpontok:

10/25/2019 2:26:01 PM
10/7/2019 13:27:51
10/4/2019 18:34:47
10/24/2019 3:44:17 PM

Igen, akad amikor PM-mel, akad amikor anélkül, amerikai formátum, esetenként egyjegyű nappal és hónappal, ahogy kell. :C

Hogy a búbánatba lehetne ebből képlettel használható dátumot kreálni?
Az időpontra nincs is feltétlen szükségem, elegendő az év-hónap-nap - csak pivotálható legyen, dátum szerint rendezhető...

Előre is köszönöm a segítséget!

(#42025) Peterhappy válasza Peterhappy (#42024) üzenetére


Peterhappy
őstag

Tárgytalan, sikerült!
Bár biztosan létezik szebb megoldás, de amire kell, arra tökéletes lesz. :K

(#42026) ny.janos válasza Peterhappy (#42025) üzenetére


ny.janos
tag

Használhatod a
=DÁTUM(ÉV(G2);HÓNAP(G2);NAP(G2))
vagy még egyszerűbben a
=KEREK.LE(G2;0)
képleteket is.

(#42027) Peterhappy válasza ny.janos (#42026) üzenetére


Peterhappy
őstag

Koszonom, holnap kiprobalom! Lenyegesen szebb es igenyesebb lenne, az biztos...

(#42028) dav<3


dav<3
tag

Sziasztok!

Lenne egy olyan problémám amit talán excel-lel meg lehet oldani és eszméletlenül megkönnyítené az életem. Ezért fordulok hozzátok, hátha valaki aki benne van már oldott meg hasonló problémát.

Tehát adott mondjuk a példa kedvéért egy webshop. Egy webshop ami kerékpárokat árul. Van egy adott kerékpár, legyen a neve "26"-os felnőtt kerékpár". ennél a terméknél van 4db konfigurációs lehetőség, amely változtatja az árat is. Pl.: Lehet kérni a vázat 10 féle színben, minden színnek más az ára. Lehet kérni 10 fajta gumiabronccsal, megint csak mindnek különböző az ára, valamint mondjuk 10 fajta áttétellel melyeknek megint csak különböző az áruk. Tehát összesen 10*10*10 fajta ár lehet, azaz összesen 1.000 féle ára lehet ennek a kerékpárnak. A probléma viszont az, hogy a webshopban nem lehet megadni, hogy az egyes változatoknak mennyi a plusz ára a sztenderd árhoz képest, hanem minden egyes variációhoz külön kell nekünk manuálisan megadni az árat. Ez a probléma. Hogyan tudnék excelben létrehozni egy olyan munkafüzetet, ahol ha megadom, hogy pl. 100.000 Ft az alapára a kerékpárnak, majd pedig megadom a 3*10db opciót árakkal, akkor az excel kiszámolja nekem az összes létező variációt, tehát mind a 1.000db-ot és mondjuk egymás alá megadja nekem egy táblázatban. Ezt követően az árakat már egy egyszerű skripttel be tudom pár gombnyomással vinni az oldalra, ezzel nincs baj. A kiszámításánál akadtam el.

Előre is köszönöm mindenkinek aki egyáltalán elolvassa ezt a feladványt, ha pedig még segíteni is tudtuk akkor le a kalappal! :R

Üdv.
Dávid

10+ éves Prémium! tagság, 1400+ pozitív és 0 negatív értékelés. Megbízható, rugalmas, precíz, gyors, aktív és csalódásmentes üzletfél! ⭐️⭐️⭐️⭐️⭐️

(#42029) Peterhappy válasza ny.janos (#42026) üzenetére


Peterhappy
őstag

Szia János,

Egyik módszer sem működött.
Próbáltam átállítani a G oszlop formátumát dátumra - de úgy sem.

Azért köszönöm :)

(#42030) lappy válasza dav<3 (#42028) üzenetére


lappy
őstag

Legördülő lista minden plusz dologhoz és annyi sorban ahány variációban akarod
De ha szeretnéd az is megoldható bár nem egyszerűen hogy az összes variációt összeallitja majd egy megadott adatbázisból árazás is megtortenik.

Bámulatos hol tart már a tudomány!

(#42031) Fferi50 válasza dav<3 (#42028) üzenetére


Fferi50
őstag

Szia!
Egy makróval megoldható a feladat. Az árlistát az alábbiak szerint helyezd el:

Az L2 cella tartalmazza az alapárat, az M, O, Q oszlopok a tartozékfajták megnevezését, a mellettük levő oszlop pedig az árakat.
Az árlista generálása az A2 cellától kezdődik és tartalmazza az adott tartozék nevét és árát valamint a végösszeget. A fejléceket nem írja ki a makró, amely az alábbi:
Sub varial()
Dim aras(), u As Integer, usor As Integer
Dim x As Byte, y As Byte, z As Byte
u = 2
usor = Range("M2").End(xlDown).Row
aras = Range("M2:R" & usor).Value
For x = 1 To UBound(aras, 1)
    For y = 1 To UBound(aras, 1)
        For z = 1 To UBound(aras, 1)
            Cells(u, 1).Value = 100: Cells(u, 2).Value = aras(x, 1): Cells(u, 3).Value = aras(x, 2): Cells(u, 4).Value = aras(y, 3): Cells(u, 5).Value = aras(y, 4): Cells(u, 6).Value = aras(z, 5): Cells(u, 7).Value = aras(z, 6)
            Cells(u, 8).Value = 100 + aras(x, 2) + aras(y, 4) + aras(z, 6)
            u = u + 1
        Next
    Next
Next
End Sub
Ezt a makrót egy modullapra helyezd el. (eljárás az összefoglalóban).
3 fajta összetevőt használhatsz, de ezen belül nem csak 10-10 lehetőséget, azokat tetszés szerint növelheted. Fontos, hogy azokat az M :  Roszlopokba írd.

Üdv.

(#42032) ny.janos válasza Peterhappy (#42029) üzenetére


ny.janos
tag

Sajnos tartottam tőle, hogy így lesz. Én feltételeztem ugyanis, hogy a riportolt adataid dátum formátumúak, de ezek szerint szövegként kezeltek. Ez esetben viszont a te megoldásodat is ki kellene még egészíteni a DÁTUMÉRTÉK függvénnyel, hogy az excel is dátumként ismerje azt.

Egy másik ötlet, hogy az adataidat Power Queryvel próbálod meg beolvasni, és ott formázod az adott oszlopot a megfelelő formátumra. Ha ez sikerül, akkor működnie kellene a képletemnek. Több meló lesz megcsinálni, de ha rendszeresen olvasol be adatot, akkor valószínűleg megéri. ;)

(#42033) dav<3 válasza Fferi50 (#42031) üzenetére


dav<3
tag

Hali!

Kipróbáltam a dolgot. Elsőre azt mondanám, hogy működik, azonban mégsem. Az első hiba, hogy hiába van nekem megadva egy alapár az L2 cellában, mégis a te 100-addal számol alapárat. Továbbá olyan problémám is van, hogy a konkrét opciós lista az 26x3x3, tehát összesen 234 árnak kellene kijönnie. Azonban a makrót lefuttatva 17.517 db jön ki.

Nagyon szépen köszönöm az eddigi munkádat is, ha pedig remélhetőleg nem túl nagy munkával még ki tudnád javítani, abban az esetben nagyon hálás lennék! :R

Üdv.
Dávid

10+ éves Prémium! tagság, 1400+ pozitív és 0 negatív értékelés. Megbízható, rugalmas, precíz, gyors, aktív és csalódásmentes üzletfél! ⭐️⭐️⭐️⭐️⭐️

(#42034) Fferi50 válasza dav<3 (#42033) üzenetére


Fferi50
őstag

Szia!
Bocs, a 100-ast valóban elnéztem.
A makrót megváltoztattam, annyi a megkötés, hogy 3 komponensnek kell lennie és az M-R oszlopokban legyenek az adatok, ahogyan a képen mutattam: név, mellette az ár. Lehetnek különböző hosszúságúak.
Az alapár az L2 cellában legyen.
A makró többször is futtatható, az előző futás eredményét törli.
Sub varial()
Dim aras(), u As Integer, usor1 As Integer, usor2 As Integer, usor3 As Integer, alap As Double
Dim x As Byte, y As Byte, z As Byte
Application.ScreenUpdating = False
u = 2
usor1 = Range("M2").End(xlDown).Row
usor2 = Range("O2").End(xlDown).Row - 1
usor3 = Range("Q2").End(xlDown).Row - 1
aras = Range("M2:R" & usor1).Value
If Range("A2") <> "" Then Range(Range("A2"), Range("A2").End(xlToRight).End(xlDown)).ClearContents
alap = Range("L2").Value
For x = 1 To usor1 - 1
    For y = 1 To usor2
        For z = 1 To usor3
            Cells(u, 1).Value = alap: Cells(u, 2).Value = aras(x, 1): Cells(u, 3).Value = aras(x, 2): Cells(u, 4).Value = aras(y, 3): Cells(u, 5).Value = aras(y, 4): Cells(u, 6).Value = aras(z, 5): Cells(u, 7).Value = aras(z, 6)
            Cells(u, 8).Value = alap + aras(x, 2) + aras(y, 4) + aras(z, 6)
            u = u + 1
        Next
    Next
    DoEvents
Next
Application.ScreenUpdating = True
MsgBox "Készen vagyok!"
End Sub

Üdv.

(#42035) Peterhappy válasza ny.janos (#42032) üzenetére


Peterhappy
őstag

Koszonom szepen, ez jo otletnek tunik, holnap ranezek :) :R

(#42036) Peterhappy válasza ny.janos (#42032) üzenetére


Peterhappy
őstag

Próbálkoztam most kicsit vele. Érdekes ez, mert működött és így tudtam pl. a pivotban hónapos szűrést beállítani neki, ugyanakkor a dátum formátuma szétesett, pl. 1.szept jelent meg "2019. 09. 01." helyett (amit az összefűzésekkel én adtam meg).

Finomítanom még így is kellett a táblázaton, plusz nullákat bedöfködnöm, ha egyszámjegyű a hónap vagy a nap, szóval nem mondanám szépnek a képletet, de elméletileg most teszi a dolgát :) Nekem pedig a napi kimutatás elégséges - egy hónapos szűrővel szebb lenne ugyan, de így is gyakorlatilag tökéletes :)

Nagyon szépen köszönöm a segítségedet!

(#42037) Fferi50 válasza Peterhappy (#42036) üzenetére


Fferi50
őstag

Szia!
Ha már valóban dátum lett a pivot forrása, akkor a pivotban a mezőt meg tudod formázni. Ráállsz a mezőfejlécre, majd jobb egérgomb, mezőbeállítások - alul balra megtalálod a számformátum gombot. Itt be tudod állítani a neked megfelelő dátumformátumot, függetlenül az alapadatok formátumától.

Üdv.

(#42038) TigerCat válasza TigerCat (#42021) üzenetére


TigerCat
nagyúr

Erre bármilyen ötlet esetleg?

♛ Kanapékirály Bútor és Kanapé Webáruház »»» https://kanapekiraly.hu

(#42039) dav<3 válasza Fferi50 (#42034) üzenetére


dav<3
tag

Csodálatosan működik!!!

Nagyon szépen köszönöm!

Esetleg még annyit meg tudnál tenni, hogy készítesz ugyan ilyen működéssel egy olyan verziót amely 4 változós? Tehát pl. az M, O, Q és S oszlopokból veszi a számítandó értékeket? Tehát csak 1 oszloppal bővíteni?

Üdv.
Dávid

10+ éves Prémium! tagság, 1400+ pozitív és 0 negatív értékelés. Megbízható, rugalmas, precíz, gyors, aktív és csalódásmentes üzletfél! ⭐️⭐️⭐️⭐️⭐️

(#42040) sztanozs válasza TigerCat (#42021) üzenetére


sztanozs
veterán

Ha platform szinten akarsz, akkor csak makróval

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#42041) TigerCat válasza sztanozs (#42040) üzenetére


TigerCat
nagyúr

Hmmm, köszi. Ennek hogy fussak neki?

♛ Kanapékirály Bútor és Kanapé Webáruház »»» https://kanapekiraly.hu

(#42042) sztanozs válasza TigerCat (#42041) üzenetére


sztanozs
veterán

Private Sub Workbook_Open()
#If Mac Then
ActiveWindow.Zoom = 150
#Else
ActiveWindow.Zoom = 100
#End If
End Sub

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

(#42043) TigerCat válasza sztanozs (#42042) üzenetére


TigerCat
nagyúr

Szuper, bemásoltam egy új makróba, de nem történik semmi. Még sosem csináltam ilyet, gondolom nem ennyire egyszerű... :D

♛ Kanapékirály Bútor és Kanapé Webáruház »»» https://kanapekiraly.hu

(#42044) Fferi50 válasza TigerCat (#42043) üzenetére


Fferi50
őstag

Szia!
Nem mindegy, hova másolod.
A Thisworkbook kódlapját nyisd meg és oda másold be.
Ez egy eseménykezelő makró, ami akkor fut le, amikor a munkafüzetet megnyitják.

Üdv.

(#42045) Fferi50 válasza dav<3 (#42039) üzenetére


Fferi50
őstag

Szia!
Az alábbi makrókat együtt kell bemásolnod egy modulba. Igyekeztem általánossá tenni.
Az alkotó elemeket az O oszloptól lehet beírnod. Az első oszlop 2. cellája az alapár.
A többi oszlop tartalmazza a megnevezést és az árakat párban. A makró a P2 cellából indul ki (de ez nem azt jelenti, hogy ide kell az alapárat írnod), ez legyen mindenképpen a kiindulási területen. A fejléceket nem másolja. Az utolsó oszlopba kerül az összár.
Most lehet 2-3-4 sőt akár 5 összetevője is az összárnak. Persze vedd figyelembe, hogy minél több a változat, annál több lesz a variáció és nő a futási idő is. Ha már unod, akkor a Ctrl+ Break megszakítja a futást, erre két helyen figyel a makró - ott ahol DoEvents van.
A varialhat makrót kell elindítanod, a másikat majd az meghívja, ha kell neki. Íme:
Sub varialhat()
Dim u As Integer, alap As Double
Dim x As Long, y As Long, kepl As String
Dim arazas As Range, oszl As Range
Dim oszlopok As New Collection
Dim varia As Long
Dim oszlsz As Integer
Dim valami(), szoroz As Long
Set arazas = Range("P2").CurrentRegion
alap = arazas.Cells(2, 1).Value: kepl = "=A2"
varia = 1
For x = 2 To arazas.Columns.Count
  With arazas.Columns(x)
    oszlopok.Add Range(.Cells(2, 1), .Cells(2, 1).End(xlDown)), Str(x - 1)
    If x Mod 2 = 0 Then varia = varia * oszlopok(x - 1).Cells.Count: kepl = kepl & "+" & Cells(2, x + 1).Address(rowabsolute:=False)
  End With
  DoEvents
Next
oszlsz = oszlopok.Count
Application.ScreenUpdating = False
If Range("A2") <> "" Then Range(Range("A2"), Cells(Range("A2").End(xlDown).Row, Range("A2").End(xlToRight).Column)).ClearContents
u = 2
Range(Cells(u, 1), Cells(u + varia - 1, 1)).Value = alap
y = 2
ReDim Preserve valami(1 To varia, 1 To oszlsz)
szoroz = 1
For x = oszlsz To 1 Step -1
    sokszoroz oszlopok(x), x, szoroz, varia / oszlopok(x).Cells.Count / szoroz, valami
    'oszl.Copy Destination:=Cells(u, y)
    'Range(Cells(u, y), Cells(u + oszl.Cells.Count - 1, y)).AutoFill Destination:=Range(Cells(u, y), Cells(varia + 1, y)), Type:=xlFillCopy
    If x Mod 2 = 1 Then szoroz = szoroz * oszlopok(x).Cells.Count
Next
y = 2 + oszlsz
Range(Range("B2"), Cells(UBound(valami, 1) + 1, y - 1)).Value = valami
Range(Cells(u, y), Cells(u + varia - 1, y)).Formula = kepl
Range(Cells(u, y), Cells(u + varia - 1, y)).Value = Range(Cells(u, y), Cells(u + varia - 1, y)).Value
Application.ScreenUpdating = True
Range("A1").Select
MsgBox "Készen vagyok!"
End Sub
Sub sokszoroz(ByRef mit, hova, hanyszor, ciklus, ByRef valami())
Dim x As Long, cl As Range, w As Integer, z As Long
x = 1
For z = 1 To ciklus
   For Each cl In mit.Cells
      For w = 1 To hanyszor
         valami(x, hova) = cl.Value
         x = x + 1
      Next
   Next
   DoEvents
Next
End Sub

Ha bármi probléma adódik, csak írj.
Üdv.

(#42046) Petium001


Petium001
csendes tag

Sziasztok!

Van egy táblázatom, amiben az egyik oszlopban "igen" és "nem" szerepel, hosszú sorokban.
A legaljára hogyan tudom összegezni az "igen"-ek számát?

Köszi

Petium

(#42047) Fferi50 válasza Petium001 (#42046) üzenetére


Fferi50
őstag

Szia!
Használd a Darabteli függvényt.

Üdv.

(#42048) TigerCat válasza Fferi50 (#42044) üzenetére


TigerCat
nagyúr

Köszi még egyszer, de az istennek sem sikerül. Egyrészt nem tudom mi az a kódlap, másrészt hiába rögzítem a nagyítást, következő megnyitáskor már nem jelenik meg és nem tudom futtatni. Office 365-öt használok Mac-en ha ez számít...

♛ Kanapékirály Bútor és Kanapé Webáruház »»» https://kanapekiraly.hu

(#42049) Fferi50 válasza TigerCat (#42048) üzenetére


Fferi50
őstag

Szia!
Az Excel munkalap nézetből az Alt+F11 gomb visz át a VBA (makrós) ablakba.
Az ablakban normál esetben van egy Projekt rész. Itt láthatod a munkalapjaid és hozzá a Thisworkbook - ot. Arra ráállsz - jobb egérgomb -View Code
Megjelenik a jobb oldalon a kódlap. Oda másold be.
Sajnos sem 365 sem Mac nincs nekem, így nem tudom kipróbálni.

Üdv.

(#42050) bozsozso


bozsozso
őstag

Sziasztok,

Kaptam régebben egy ilyen power query-s segítséget. Ezt ki lehetne úgy egészíteni, hogy a gyümölcsökhöz tartozó számokat az alján összesítse, hogy hány db? Arra lenne ötletem, hogy miután az oszlopot szétválasztottam utána kellene még egy oszlopot hozzáadni és abba mehetne a számolás. Azt tudom, hogy excelben pl darabteli függvénnyel meg tudom számoltatni, de itt nem tudom milyen módon, függvénnyel lehetne összegezni. Utána mehetne a transzponálás. Mindegy, de lehetne a transzponálás után is a számolás csak nem tudom sort lehet-e hozzáadni.

Útvonal

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