-
Mobilarena
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
-
válasz
Apollo17hu #18199 üzenetére
köszi, ez így tiszta, de nincsen elegánsabb megoldás?
tökjó, hogy drop down box-szal oszlop értékeket ki lehet választani, de nehogymár ne lehessen egész sorokat... vagy tényleg nem lehet?
-
Apollo17hu
őstag
válasz
bandus #18198 üzenetére
Ha adatSORokról van szó, akkor minden sor elejére szúrj be egy azonosítót (mondjuk számokat 1-től n-ig), a képletedben pedig használj FKERES-t, ami ezekre az azonosítókra vonatkozik. Fontos, hogy az azonosítók ABC-rendben legyenek, hogy az FKERES helyesen találja meg őket.
Ha a képleted átírtad, akkor keress egy cellát a munkalapon, ami jól látható helyen van, de nem zavar be az adatsoroknál. Erre a cellára alkalmazz érvényesítést, az érvényesítés tartománya pedig legyenek a korábban létrehozott sorazonosítók (amiket az FKERES-sel vizsgálsz). Így kapsz egy lenyíló menüs cellát, aminek az értéke határozza meg, hogy az FKERES éppen melyik sort találja meg.
-
sziasztok!
szeretnék egy gyors véleményt kérni:
vannak jó hosszú adatsoraim, sorokba rendezve, van olyan eset is, hogy 12 db, ezek jellemzően árakat jelentenek. ezek alatt van egy sor, ami mennyiséget jelöl, és ezek alatt még egy, ami pedig a kettő szorzata.hogyan lehet azt a legegyszerűbben kivitelezni, hogy a 12 db árakat tartalmazó sorból csak éppen 1 db kiválasztott legyen aktív, amit összeszorzok a mennyiséggel? és hogyan lehet ezek között könnyen váltogatni?
ilyesmikre én a szcenáriók funkciót használtam, de most túl sok változó adat lenne.
remélem érthető volt a kérdés
köszi
szerk: gyakorlatilag egy ilyen legördülő lista szerű dolgot szeretnék, amiből mindig a kiváalsztott sor számít bele az adatoakt felhasználó képletbe.
-
RAiN91
őstag
Sziasztok
Excellel hogyan tudnám egy mátrix sajátértékét, és sajátvektorát kiszámolni? -
bozsozso
őstag
Sziasztok,
Már megint zaklatnálak benneteket. Gugliba nem találtam megoldást
Ha egy cellában másik fájl cellára hivatkozom akkor a fájl nevet tudom valahogy egy cella tartalmából venni?
='C:\Teszt\2013\[1.xls]Munka1'!E2
Tehát a 1.xls fájl nevet egy cella tartalmából szeretném venni. Mondjuk A2-ből.
-
Mutt
senior tag
válasz
bozsozso #18188 üzenetére
Hello,
A "Keresés és csere" opción keresztül függvényneveket is ki lehet cserélni. Itt van bemutatva:
http://chandoo.org/wp/2009/02/17/spreadsheet-formulas-edit/A gond viszont, hogy ha szintaktikailag hibás az eredmény akkor a cserét nem csinálja meg és sajnos a
HAHIBA(FKERES();"Nincs eredmény") képletből 1 db cserével nem tudod a helyes formátumú HA(HIBÁS(FKERES();"Nincs eredmény";FKERES()) változatot előállítani.A http://www.professionalexcel.com/2011/06/replace-iferror-with-ifiserror/ oldalon van egy makró, amely megcsinálja a konverziót.
üdv.
-
Mutt
senior tag
válasz
Tompkins #18176 üzenetére
Szia,
A tükörszámos feladványra az én megoldásomat innen tudod letölteni.
Nem UDF-el, hanem a SZORZATÖSSZEG függvénnyel állítom elő a tükörképet és utána már csak
simán összeadás és összehasonlítások vannak benne.A tükörkép képlete ami összetett egyedül (A2-ben van az eredeti szám):
=SZORZATÖSSZEG(KÖZÉP(A2;1+HOSSZ(A2)-SOR(A$1:INDIREKT("A"&HOSSZ(A2)));1)*10^(HOSSZ(A2)-SOR(A$1:INDIREKT("A"&HOSSZ(A2)))))Ez a képlet 2 részből áll:
- az első része a számot egy karakter hosszúságra bontja és megfordítja, tehát pl. a 1766-ból a {6;6;7;1}
tömböt adja vissza. A fordítás egyszerűen úgy műkődik hogy hátulról kezdem el olvasni a karaktereket.
- a második része (10^HOSSZ...) pedig a helyiértéknek megfelelő szorzószámot állítja elő, vagyis {10^3;10^2;10^1;10^0}.A többit a szorzatösszeg magától teszi vagyis a számokat összeszorozza (6*1000+6*100+7*10+1*1).
A tükörszám ismeretében már lehet számolni az összegét az eredetinek és tükrének (C-oszlop), majd a kapott számot tükrözni (D-oszlop). A két számot összehasonlítva pedig lehet eldönteni, hogy kell-e további tükrözéseket végrehajtani (E-oszlopban 1-et íratok ha kell, 0-t ha már nem). Az E-oszlopban lévő ciklusok száma megadja, hogy hányszor tükröztünk. Max. 300 tükrözést hajt végre a fájlom, de ha többet akarsz akkor másold le a képleteket.
üdv.
-
bozsozso
őstag
-
Delila_1
veterán
válasz
Tompkins #18176 üzenetére
Megnéztem lépésenként. Mikor a 97-es értéknél az összeg 14003, ennek a hosszát 4-nek értékeli a tükrözésnél, ezért a tükörképét 41-nek hozza ki. A
For b = Len(osszeg) To 1 Step -1
sort (Do-Loop cikluson belül) megváltoztattam,
For b = Len(osszeg & "") To 1 Step -1
lett, így hozza a 6 db-os értéket. 395-nél és 584-nél 7 az érték.
Az
If Len(szam1) = 0 Then Tukroz = 0: GoTo Vege
sorban is a stringgé alakított forma hosszától indítom a ciklust:
If Len(szam1 & "") = 0 Then Tukroz = 0: GoTo Vege
-
bozsozso
őstag
Sziasztok,
Valahogy gyorsan el tudok távolítani egy függvényt egy táblázat minden cellájából?
-
Slownz
senior tag
Üdv!
Egy gyors segítség kéne Excel-ben:
Egy olyan script-re lenne szükségem, ami egy adott szövegen belül mindent kitöröl, csak egy adott karaktert hagy meg. Írom a példát:
[1] abraka-dabra (ez az eredeti) - 1 (ennyi maradjon belőle)
Ez a karakter mindig változó, szóval van, amikor 1-es van ott, van amikor 2-es, stb. Szóval az lenne a lényeg, hogy mindig a balról második karaktert hagyja meg.
Létezik ilyen?
Aki segít, előre is köszi -
Delila_1
veterán
válasz
Tompkins #18164 üzenetére
Közben sok számmal kipróbáltam. Vannak olyanok, ahol vagy egyáltalán nincs megoldás, vagy túl nagy az eredmény. A dimenzionálásnál az Integer-ek helyére Long-ot írtam, és megadtam egy határt (1000), ami után ne számoljon tovább, hanem írjon ki egy szöveget. Ezt a jelölt sorban módosíthatod a türelmednek megfelelően.
Function Tukroz(szam As Long)
Dim ford, b As Long, darab As Long, osszeg As Long, szam1 As Long
szam1 = szam
If Len(szam1) = 0 Then Tukroz = 0: GoTo Vege
For b = Len(szam1) To 1 Step -1
ford = ford & Mid(szam, b, 1)
Next
If szam = ford * 1 Then
Tukroz = 0: GoTo Vege
Else
Do
osszeg = szam1 + ford
ford = ""
darab = darab + 1
If darab > 1000 Then 'Itt módosíthatsz
Tukroz = "Nincs megoldás, vagy 1000-nél nagyobb": GoTo Vege
Else
For b = Len(osszeg) To 1 Step -1
ford = ford & Mid(osszeg, b, 1)
Next
szam1 = osszeg
If szam1 = ford * 1 Then
Tukroz = darab: GoTo Vege
End If
End If
Loop While szam1 <> ford * 1
End If
Tukroz = darab
Vege:
End Function -
Delila_1
veterán
válasz
Tompkins #18164 üzenetére
Írtam egy funkciót rá, de csak az általad megadott számokkal ellenőriztem. Azokkal OK.
Function Tukroz(szam As Integer)
Dim ford, b As Integer, darab As Integer, osszeg As Long, szam1 As Long
szam1 = szam
If Len(szam1) = 0 Then Tukroz = 0: GoTo Vege
For b = Len(szam1) To 1 Step -1
ford = ford & Mid(szam, b, 1)
Next
If szam = ford * 1 Then
Tukroz = 0: GoTo Vege
Else
Do
osszeg = szam1 + ford
ford = ""
darab = darab + 1
For b = Len(osszeg) To 1 Step -1
ford = ford & Mid(osszeg, b, 1)
Next
szam1 = osszeg
If szam1 = ford * 1 Then
Tukroz = darab: GoTo Vege
End If
Loop While szam1 <> ford * 1
End If
Tukroz = darab
Vege:
End Function -
Caipi
tag
-
Nekem megy angolosítva:
=IF(A1<0,"Negatív",IF(AND(A1>0, A1<=0.5),"Normál",IF(AND(A1>0.5,A1<=1.2),"Magas","Túlárazott")))csak hibás
-1 Negatív
-0.5 Negatív
0 Túlárazott
0.4 Normál
0.6 Magas
1 Magas
1.5 Túlárazott
2 Túlárazott
3 TúlárazottNem kellenek bele az és feltételek, mert alulról amúgy is folyamatosan szűkítjük a tartományt:
=IF(A1<0,"Negatív", IF(A1=0, "Nulla", IF(A1<=0.5, "Normál", IF(A1<=1.2, "Magas", "Túlárazott")))) -
Agony
aktív tag
Sziasztok!
Próbálok egy négy feltételt vizsgáló HA függvényt írni, de nem igazán sikerül működésre bírni. Három feltételig működött, de ahogy bővítettem már elszáll hibával. Sokat segítene ha ránézne egy profi!
=HA(J2<0,"Negatív",HA(ÉS(J2>0, J2<=0.5),"Normál",HA(ÉS(J2>0.5,J2<=1.2),"Magas","Túlárazott")))
A J2 cella tartalmát vizsgája, ami árréseket tartalmaz.
0 alatt Negatív,
0-0.5 között Normál
0.5-1.2 között Magas
1.2 fölött Túlárazott
... értéket kellene visszaadni a függvénynek a K2 cellába.Előre is köszönöm!
-
Tompkins
tag
válasz
Delila_1 #18161 üzenetére
Adott pl. a "78". Beütve ezt a számot és lefuttatva a makrót, meg szeretném kapni, hogy hányszor kell összeadni a tükörképével, majd annak a tükörképével stb., hogy egy önmagában tükrös számot kapjunk.
Tehát: 78 -> 78+87=165 -> 165+561=726 -> 726+627=1353 -> 1353+3531=4884 -> Válasz: 4 (négyszer kellett elvégeznie a megfordítását a számnak és összeadni)
Vagy egy másik példa: 34 -> 34+43=77 -> Válasz: 1
Vagy: pl. 8 ill. 11 esetén -> Válasz: 0 (önmagában tükrös)
-
motinka
tag
Mutt, nagyon köszi a kimerítő segítséget
-
Tompkins
tag
Sziasztok!
A következő kérdést kéne valahogy megoldanom Excelben:
Hányszor kell egy számot és annak tükörképét, majd az összeget és annak tükörképét összeadni, hogy egy számjegyeire nézve tükrös számot kapjunk?Úgy kéne működjön, hogy megadok egy számot, elindítom, és megmondja, hogy hányszor kell tükrözni és összeadni az eredményt, stb., hogy egy önmagában tükrös számot kapjunk.
Természetesen az egyjegyűeknél és már eleve tükröseknél "0" az eredmény, a többinél meg a számolt eredményt dobja ki.Nagyjából megcsináltam Excelben képletekkel, de nagyon hosszú és 0-1000-ig működik 1-2 kivételtől eltekintve.
De biztos vagyok benne, hogy egyszerűbben is meg lehet oldani a feladatot...nincs valami ötletetek? -
Mutt
senior tag
Hello,
...van két dátumom ilyen formátumban: 09.10.2012 12:09.
A hibaüzenet azt jelenti, hogy a dátumnak látszó érték szöveg formátumban van.
Megoldás hogy szöveg függvényekkel darabokra szeded és átalakítod őket.A PowerPivot az alap Pivot kibővítése; csak sokkal több adatot tud kezelni, több számításra képes.
A Pivot pedig egy kimutatás készítő vagyis a megadott adathalmazból kivonatot tud készíteni a beállítások alapján.
pl. Egy lap tartalmazza napi szinten az üzletkötők által eladott termékek megnevezését, árát, mennyiségét stb. Pivot-tal tudsz készíteni egy összesítést, hogy melyik üzletkötő adott termékbő mennyit adott el.Ha kiismered magad a Pivotban, akkor a PowerPivot sem lesz gond.
üdv.
-
Beri
addikt
Üdv mindenkinek!
Olyat kéne csinálnom, hogy van két dátumom ilyen formátumban: 09.10.2012 12:09.
A kettő között eltelt időt kéne kiszámíttatni, valamit az egyik ilyen timestamp-ot fel kéne bontani csak dátumra, csak időre, csak weekday-re, csak órára, meg csak hét számára (x-edik hét).
Erre elvileg létezik gyors megoldás, csak gyakorlatilag egyik függvény sem ad vissza tisztességes értéket, csak #value-val van tele a táblám...Ja és van egy csodálatos power pivot nevű tool, amivel mindenféle gyönyörűséges dolgot lehet csinálni, de fogalmam sincs, hogyan kéne használni, vagy mire is jó pontosan...
-
Delila_1
veterán
Mikor átmásoltad Excelbe, a dátumot tartalmazó celláknak adj feltételes formázást.
Vegyük, hogy a dátumaid a B oszlopba kerültek, és címsort feltételezve az első dátumod a B2 cellában van. Erre a cellára kell adnod a formázást, aminek a képlete =B2<MA(). Megadod a feltűnő színt, majd a B oszlop többi cellájára átmásolod a formátumot a formátumfestő ecsettel.
Szerk.:
Ez a módszer a dátum celláját formázza, de ha az A2 feltételes formázásához az =$B2<MA() képletet viszed be, akkor az A oszlopban lévő mérőeszköz cellájának a formátuma változik a dátum függvényében. -
Traxx
őstag
Sziasztok!
Ismét segítséget szeretnék tőletek kérni
Van egy listám word-ben, amely különféle mérőeszközöket tartalmaz, és azokhoz hozzá van rendelve egy dátum, ami a hitelességének lejártát mutatja. Ezt szeretném excelbe áttenni, de megokosítva egy kicsit. Méghozzá úgy, hogy a dátumot "figyelje", tehát ha az adott eszköz dátuma túllép a mai napon, akkor jelölje be valahogy a cellát, pl. legyen piros a háttere.Így azonnal szembetűnő lenne a "problémás" eszköz, és nem kellene a listát bogarászgatni... Meg lehet ezt oldani valahogyan?
Köszönöm a segítséget
-
Mutt
senior tag
válasz
cserma #18146 üzenetére
Hello,
Hát nem voltunk ott a "megbeszélésen" ezért anélkül erre jutottam.
Feladat 1: paraméter 4 direkt nem volt?
Function SajatFuggveny(P1, P2, P3, P5)
SajatFuggveny = P1 * P2 * P3 - P5 * 10 - 100.05
End FunctionVagyis majd így tudod használni: =SajatFuggveny(3,3;4;5;7)
Nincs benne semmi hibaellenőrzés, azért érdemes lenne a bemenő paramétereket legalább egy ISNUMERIC-re ellenőrízni.Feladat 2: itt feltételezem, hogy a narancssárga mező helye B7.
Sub SajatNegyzet()
If IsNumeric(ActiveCell) Then Range("B7") = ActiveCell ^ 2
End SubEzt is lehet bővíteni azzal hogy szóljon ha nem jó az éppen kijelölt cella vagy esetleg több cella van kijelölve.
üdv.
-
Mutt
senior tag
válasz
motinka #18145 üzenetére
Hello,
Itt vannak a kész változatok.
Szóval ahogy írtam több megoldás is lehetséges.
1. Írtam egy makrót, amely minden egyes adatbevitelkor megnézi hogy van-e mit mozgatni és ilyenkor az egészet átviszi és sorbarendezi. A beviteli lap Change eseménye hívja meg. A beviteli lap tartalma az adat2-n jelenik meg.
Sub Adatmasolas()
Const wsEredeti = "adat"
Const wsCel = "adat2"
Dim vLastRowEredeti As Long
Dim vLastRowCel As Long
'megnézzük az eredeti lapon az utolsó sor helyét
vLastRowEredeti = ThisWorkbook.Sheets(wsEredeti).Range("B" & Rows.Count).End(xlUp).Row
'megnézzük az cél lapon ahova másolunk az utolsó sor helyét
vLastRowCel = ThisWorkbook.Sheets(wsCel).Range("B" & Rows.Count).End(xlUp).Row - 1
'ha több sor van az eredeti lapon akkor lehet másolni a másikra
If vLastRowEredeti > vLastRowCel Then
'képernyőfrissítés kikapcsolása
Application.ScreenUpdating = False
With ThisWorkbook.Sheets(wsEredeti)
'naptár kód másolása
.Range("X2:X" & vLastRowEredeti).Copy Destination:=Sheets(wsCel).Range("A3")
'dátum másolása
.Range("B2:B" & vLastRowEredeti).Copy Destination:=Sheets(wsCel).Range("B3")
'munkalapszám másolása
.Range("C2:C" & vLastRowEredeti).Copy Destination:=Sheets(wsCel).Range("C3")
'munka kezdete másolása
.Range("T2:T" & vLastRowEredeti).Copy Destination:=Sheets(wsCel).Range("D3")
'munka vége másolása
.Range("U2:U" & vLastRowEredeti).Copy Destination:=Sheets(wsCel).Range("E3")
'munkakód másolása
.Range("I2:I" & vLastRowEredeti).Copy Destination:=Sheets(wsCel).Range("F3")
'lezáró kód másolása
.Range("W2:W" & vLastRowEredeti).Copy Destination:=Sheets(wsCel).Range("G3")
End With
'sorbarendezés dátum szerint
Sheets(wsCel).Activate
With ThisWorkbook.Sheets(wsCel)
.Columns("A:G").Select
.Columns.AutoFit
.Sort.SortFields.Clear
.Sort.SortFields.Add Key:=Range("B2:B" & vLastRowEredeti), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.Sort.SetRange Range("A2:G" & vLastRowEredeti)
.Sort.Header = xlYes
.Sort.SortMethod = xlPinYin
.Sort.Apply
End With
Sheets(wsEredeti).Activate
'képernyőfrissítés visszaállítása
Application.ScreenUpdating = True
'kijelölés megszüntetése
Application.CutCopyMode = False
End If
End Sub2. A másik megoldás pedig beépített függvényeket tartalmaz, kell hozzá egy ségédtábla és a függvényeket legalább addig le kell másolnod amennyi lesz a várható adatsor (én csak az első 300 sorba másoltam őket).
A megoldás a 3. lapon van.3. A Kimutatás is használható lehet, azonban a megadott mintában nem volt elegendő egyedi érték, így az ismétlődéseket nem tudja kezelni.
üdv.
-
cserma
csendes tag
Sziasztok!
Valaki, ha ráér, kérem oldja meg a lenti feladatot és küldje el nekem.
Nagyon köszönöm Mindenkinek!Számítás
Paraméter 1 3,3
Paraméter 2 4
Paraméter 3 5
Paraméter 5 7
Eredmény 1 -104,05
Eredmény 2
Eredmény 3Feladat 1
A fenti tábla szürke mezőjébe illessz be egy funkciót, amit Te írtál, ugyanazokból a számokból számol és pontosan ugyanazt az eredményt hozza ki, mint a felette lévő szám.
A feladathoz nem elég az, amit átbeszéltünk, gondolkozz, legyél kreatív ill. keress rá Interneten. Ha nagyon elakadsz, szólj!Feladat 2
Ha megnyomom a fenti gombot, akkor a fenti tábla narancssárga mezőjébe kerüljön be annak a számnak a négyzete, amelyiket a gomb megnyomása előtt kijelöltem!
(pl. kijelölöm a D7 mezőt, majd megnyomom a gombot, akkor a narancssárga mezőbe kerüljön 25, stb.) -
motinka
tag
hello,
http://www.hunsurf.hu/teszt_20130524.xlsx
ide felraktam a táblázat egy részét, természetesen sokkal több sorbó és több oszlopból áll.
A lényeg az lenne hogy az adat fül érkezik minden nap és az adat2 fül első sora szerinti oszlopokra lenne szükségem, ami az eredeti adat fülön lévő megnevezése az második sorban látható.
És miután átrakta a kívánt oszlopokat, rendezze be dátum szerint.
Ezzel nem is lenne gondom, csak az lenne a kívánalom, hogy másnap jön egy újabb fájl aminek az adat fülében benne vannak az aznapi adatok, és akkor is kellene egy adat2 fül belőle, és így tovább minden nap. -
Mutt
senior tag
válasz
Apollo17hu #18143 üzenetére
Hello,
Hivatalosan a tömbképletet úgy kell bevinni, hogy előbb kijelölöd a tartományt ahova a képletnek kell mennie,
majd beírod a képletet és jön a CSE billentyűkombináció. Ezzel csak az a gond, hogy a relatív hivatkozások nem fognak módosulni. Tehát itt nem fog műkődni ez a módszer.Marad a hagyományos, vagyis 1 db cellába viszed be a tömbképletet, és onnan lehúzással/másolással töltöd fel a többi cellát. Ekkor a relatív hivatkozások módosulni fognak.
üdv.
-
Mutt
senior tag
válasz
motinka #18132 üzenetére
Hello,
...egy rengeteg adatból álló adat tábla, ami naponta frissül.
Ebből kellene nekem oszlopokat kiszedni rendezni, sorba rakni...Több megoldás is lehetséges, de esetleg egy mintát meg tudsz osztani velünk?
1. Makró létrehozása (egy Worksheet.Change eseménnyel teljesen automatikus lesz).
2. Ha a sorbarendezés oszlopa EGYEDI SZÁMOKAT tartalmaz (nincs ismétlődés és nem szám), akkor a Kimutatás (Pivot) is segít és a többi oszlopot FKERES-sel mellé lehet tenni. A kimutatást be lehet állítani, hogy a fájl minden megnyitásakor automatikusan frissüljön.
3. Végső megoldás pedig segédoszlop és a KICSI + FKERES függvények használata.üdv.
-
Mutt
senior tag
-
Pacsaj
csendes tag
Sziasztok,
Segítségre van szükségem excel file-ok adatainak összefésüléséhez.
A táblázatok különböző és file-onként nem ismétlő termékekhez anyagokat rendelnek, hozzátartozó mennyiségekkel. Egyforma anyag szerepelhet bármelyik táblázatban. Egy helyre szeretném rendezni az adatokat úgy, hogy minden termék együtt szerepeljen, a hozzá tartozó anyagokkal, ismétlődés nélkül, és a mennyiség természetesen összeadódjon ott, ahol az ismétlődés fenn áll.
Segítségeteket köszönöm,
Pacsaj -
motinka
tag
válasz
m.zmrzlina #18137 üzenetére
köszönöm ezt mindenképpen megpróbálom.
Közben keresgettem és ha jól olvasom/értem nekem egy template-t kell csinálnom amiben megadom a kívánságaimat, ezt berakom az egyik fülre.
Amikor érkezik a napi adat file, az mellé beteszem a másik fülre ezt a template fület és hogy mitől indul el azt nem tudom) Hol lehet ezután magyarul olvasni okosakat?
Közben felmerült egy kérdés, ebben a template-ben ami táblázatnak van megformázva, azaz nem csak itt érvényes, bárhol, hogyan tudok egy fülön rákeresni egy másik fül oszlopnevére (ez adott), hogy azt gyűjtse? köszi -
m.zmrzlina
senior tag
válasz
motinka #18135 üzenetére
Arra gondol, hogy ha tudod, hogy miből mit szeretnél csinálni akkor elindítod a makrórögzítést itt: (Excel2007 vagy újabb esetén)
Adsz neki egy nevet és végigcsinálod amit szeretnél majd leállítod. Ezután ha bármikor el szeretnéd végezni ugyanezt a feladatot csak kiválasztod az előbb rögzített makródat itt:
és lefuttatod.
De írd le pontosan mit szeretnél (esetleg képpel), hátha tudunk ötletet adni!
-
m.zmrzlina
senior tag
Itt egy lehetséges megoldás makróval:
Sub legnagyobb_hol()
For Each cella In Selection.Cells
datum = cella.Value
For Each cella_1 In Selection.Cells
If cella_1.Value = datum And cella_1.Offset(0, -1).Value > temp Then
legnagyobb_sor = cella_1.Row
temp = cella_1.Offset(0, -1).Value
End If
Next
For Each cella_2 In Selection.Cells
If cella_2.Value = datum Then
cella_2.Offset(0, 1).Value = temp
End If
Next
temp = 0
Next
End Sub"A" oszlopban vannak az értékek, "B" oszlopban a hozzájuk tartozó dátumok, "C"-ben pedig, hogy az adott dátumnál mi a legnagyobb érték.
Úgy indulsz, hogy kijelölöd a dátumokat tartalmazó cellákat az elsőtől az utolsóig. Ha a te munkalapod szerkezete nem ilyen (amire jó esély van
) akkor tegyél be egy képet és hozzáfaragjuk a makrót.
-
lapa
veterán
uh, hát lehet, hogy ezt benézem, de lényeg, hogy van egy hosszú listám, és szeretnék részmaximumokat kivenni. azaz, hogy minden cellába írja ki, hogy "ahol ugyanaz a dátum, mint ebben a sorban, abból melyik a legnagyobb".
van mindenféle halovány emlékem, én valahogy abban voltam, hogy a dmax-ra rá lehet erőltetni, hogy ne fix A1 : A2 tartományt nézzen, hanem valahogy így: =DMAX(A : R;Flaeche;Datum=A2)
ahol A2, A3.... az adott sor.
node ez így nem működik... bogarásztam tömbképletet, egyelőre az se akar. más kérdés, hogy eltekintenék tőle, ha lehet.
az is lehet, hogy lemakrózom, már negyedik napja ezzel a táblával küzdök. elég uncsi. ha valakinek jobban sejlik a dmax vagy más szintakszis, ne kíméljen.
-
motinka
tag
sziasztok ismét,
természetesen problémával fordulnék hozzátok, ami a következő:
van egy rengeteg adatból álló adat tábla, ami naponta frissül.
Ebből kellene nekem oszlopokat kiszedni rendezni, sorba rakni.
Lehet, van-e olyan megoldás hogy ez automatikusan megtörténjen, azaz én megadom melyik oszlopokat hova rakja be, esetleg szűrje, egy új fülre.
Előre is köszönöm a segítséget -
Mutt
senior tag
válasz
hallgat #18101 üzenetére
Hello,
A nevesített cellákra makróban az alábbi módokon tudsz hivatkozni:
Range("ALPHA_2X2")
[ALPHA_2X2]A lenti makró az ALPHA_2X2, 2X3 és 2X4 nevű cellák tartalma alapján vagy adja a felugró ablakot, vagy futtatja a kódodat. Ha legalább az egyik cella üres, akkor leáll, vagyis csak akkor enged tovább ha minden mezőben van vmi (hogy az szám, szöveg, képlet stb. nem nézi).
Sub Elagazas()
Dim blnUres As Boolean
Dim cell As Range
blnUres = False
For Each cell In Range("ALPHA_2X2, ALPHA_2X3, ALPHA_2X4")
If IsEmpty(cell.Value) Then blnUres = True
Next cell
If blnUres Then
MsgBox "Hiányzó értékek!", vbOKOnly, "Hiba"
Else
'ide jön az eredeti kódod
End If
End SubEbből tudsz építkezni ha nem lenne elég.
üdv.
-
Mutt
senior tag
Szia,
Csináltam én is egy változatot rá, amely segédoszlopokat használ és dinamikus tartományokat.
A minta felkerült ide.
A lényeg, hogy ha meg van az első két szűrés akkor már az utolsó listát egyszerűen elő lehet állítani ezzel a képlettel:
=ELTOLÁS($C$4;HOL.VAN(L2;B:B;0)-1;0;DARABTELI(B:B;L2))Az ELTOLÁS függvénnyel lehet ún. dinamikus tartományt létrehozni, amely lehet egy cella, vagy egymás melletti cellák sora ugyanazon sor vagy oszlopon belül. A C4-es mezőből indul el mindig és attól függőn hogy éppen almát vagy szilvát választottak ki lemegy az odaillő első sorba és kijelöli a szükséges elemeket.
Ami viszont nem megy ilyen egyszerűen az a megadott formátumod alapján kiválasztani a lehetséges típusokat (pl. gyűmölcs) és az ahhoz tartozó altípusokat. Ehhez vagy makró vagy segédoszlopok kellenek.
Az első segédoszlopok (D és E) megjelenítik a kiválasztható elemeket, az F és G ahhoz kell hogy ABC sorrendbe rendezhetőek legyenek a választható elemek. A H és I oszlopok pedig ABC sorrendben és üres sorok nélkül tartalmazzák a végleges választható elemeket.
A D-I oszlopban a képleteket legalább másold le addíg, amíg van A-C oszlopban adatod. Én csak az első 17 sorba írtam be őket. A többi képlet univerzális, tehát ha bővíted a listát akkor is műkődni fognak.
üdv.
-
Mutt
senior tag
válasz
A_ScHuLcZ #18123 üzenetére
Hello,
...ha pl be kell vinnem 74 perc 13 mp-et, akkor ne kelljen számolgatnom, hogy az 1:14:13, mert abba rövid úton bele fogok zavarodni...
Simán számformátummal ahogy látod nem fogod tudni elérni, hogy 1:14:13 helyett 74:13-at jelenítsen meg az Excel. Alternatív megoldás lehet, hogy mondjuk A oszlopba viszed be csak a percet (pl. 74) és B oszlopba a másodpercet (13). Utána C-oszlopban az összefűz függvénnyel meg tudod jeleníteni a kívánt formátumban (azonban ezzel számolni nem vagy csak nehezen fogsz tudni).:
=A1&":"&B1
Ezzel a móddal az összegzést simán az A és B-oszlopra el tudod végezni (B-nél természetesen az eredményt 60-al osztod hogy a percekhez hozzá tudd adni).
üdv.
-
Az alább linkelt cikk alapján csináltam - csak a több oszlophoz kellett plusz egy kis szűrés - no meg némi módosítás az eredeti képleteken. A cikkben szépen el van magyarázva miért és hogy működik a dolog.
[link]Elméletileg amúgy ha a Sheet1 A - C - E oszlopaiba belerakod a megfelelően struktulát adataidat, akkor bármennyi adatot (max 999 sor a jelenlegi képlet alapján) fel tudsz dolgozni, feltéve hogy a B - D - F oszlopokban a képletet lehúzod az A oszlop aljáig...
-
amaps
csendes tag
válasz
sztanozs #18118 üzenetére
Szia!
Köszi még egyszer a fáradtságodat!
Ma különben egész nap azon küzdöttem, hogyan tudnám átrakni a képleteidet a saját táblázatomba. Mondanom sem kell, hogy nem ment
Csak kérdezem, hogy azért, mert levédted, vagy maga a megoldás ragaszkodik ennyire az általad gyártott sheethez?
Egyébként egyetlen dolgot szerettem volna módosítani rajta, méghozzá azt, hogy a rendezett lista ne csak kb. 14 sorra vonatkozzon, mert vannak olyan tételek, ahol nyolcvannál is több altétel van. De persze ez sem sikerült
Tehát csak az a kérdésem lényege, hogy levédted a képleteket, vagy én vagyok rettentő béna?Köszi,
amaps -
A_ScHuLcZ
addikt
válasz
sztanozs #18121 üzenetére
Csak makróval? Sosem használtam még olyat, írni meg pláne nem írtam, nagyon keveset használok excelt. Sok mindent tudok infóból, de az office alkalmazások nem tartoznak ezek közé, alig használom őket.
Nem csak összegzésnél lenne rá szükség, hanem a bevitelnél is. Tehát szépen beviszem az adatokat egy oszlopba, és lent összegzem, de bevitelnél is pp:mm és összegzésnél is pp:mm formátumra lenne szükség, mivel a forrásomban is így vannak feltüntetve. Tehát ha pl be kell vinnem 74 perc 13 mp-et, akkor ne kelljen számolgatnom, hogy az 1:14:13, mert abba rövid úton bele fogok zavarodni, és nem kevés plusz munka. 2010-ban egy ilyen funkciót igazán elhelyezhetett volna az MS az excelben
-
válasz
A_ScHuLcZ #18120 üzenetére
Egy mezőben szerintem csak makróval tudod megoldani.
Két/három mezőben szerintem működhet:
- elsőben beviszed az adatokat ppp:mm alakban
- második (eltüntetett) oszlopba átszámolod a szövegből kizárólag másodperc alapra, ezzel tudsz összeget számolni és ezt tudod majd visszaalakítani ppp:mm alakra - így:
[B2]=INT(A2/60)&":"&TEXT(MOD(A2,60),"00") -
A_ScHuLcZ
addikt
Sziasztok!
Egy gyors kérdésem lenne csak, én ritkán használom, de az excel guruk csuklóból fognak válaszolni szerintem.
Szóval szeretnék egy kimutatást készíteni, amiben a telefonszámláink alapján szolgáltatónként szétbontom a hívások időtartamát, és összegzem szolgáltatón belül a csúcs, kedvezményes, hétvégi, stb időket. Létrehoztam hozzá a táblázatot és a függvényeket, egyedül a mező formátum beállításával vagyok gondban. Nézegettem a lehetőségeket az "Idő" csoport alatt, de nem találtam olyat, amire nekem szükségem lenne. Olyat szeretnék használni ahol perc:másodperc alapon tudok adatokat bevinni, de a perc lehet több 60-nál is, és emiatt ne kelljen az óra:perc:másodperc formátumot használnom, mert a legtöbbnél nem lesz 60 feletti percérték. Tehát pl tudjak megadni olyat, hogy 125:37, ami 125 perc 37mp-nek felel meg, és összegezni is lehessen ezeket az időintervallumokat szintén ilyen formában. -
bozsozso
őstag
válasz
Apollo17hu #18113 üzenetére
Szia,
Próbáltam a SZORZATÖSSZEG() függvényt de nem jó mivel nem biztos, hogy azonos tömbről beszélünk. Eddigi próbálkozásaim mindig #ÉRTÉK hibába ütközött.
A másodiknál ilyet szeretnék elérni:
2
2
2
2 Összesen:
5
5
5
5 összesen:
23
23
23
23 Összesen
stb.Aminél a 2,5,23 értékeket egy másik munkalap A1,A2 illetve A3 stb. cellák tartalma. Ezt szeretném úgy ha egymás alá másolni tudnám bővítés esetén és nem kellene mindig beírnom, hogy honnan vegye a tartalmát.
-
amaps
csendes tag
válasz
sztanozs #18115 üzenetére
Szia!
Köszi szépen a megoldást!
Már nézem egy ideje, de még nem sikerült rájönnöm, hogyan csináltad
Ami nem is lenne gond, de a Fajta kitöltése nem jó abban az esetben, ha a Termék1-nél díszfa került kiválasztásra, és gondoltam egy merészet, hogy megpróbálom kijavítaniKöszi mégegyszer
amaps -
amaps
csendes tag
válasz
sztanozs #18109 üzenetére
Gondolkodtam azon, amit mondtál, hogy két szinten túl már makró kell a függvények helyett.
Az biztos, hogy én makrót nem tudok írni, ezért lehet, hogy feladom a tervemet, és inkább megállnék az első két tétel automatikus kiválasztási lehetőségénél.(pl. ha gyümölcs, akkor az alma, meggy és szilva lista jelenjen meg).
A harmadik oszlopot beáldoznám, és lenne helyette mondjuk egy szabad szöveges mező.Üdv,
amaps -
amaps
csendes tag
válasz
sztanozs #18109 üzenetére
Szia!
Mindenképpen kíváncsi lennék a javaslatodra!
Most volt időm alaposan megnézni lappy megoldását, és sajnos Ő is fix értékekkel dolgozott a forrás megadásánál, ami az én esetemben nem járható, mivel a tétellistám több, mint 300 különféle termékből állLégy szíves, írd meg az elképzelésedet!
Köszi,
amaps -
Szerintem makróval lehet csak 2-nél több szintet.
Két szinten még megoldottam excel fügvényekkel, de szerintem három szinthez szerintem már makró kell.
Legegyszerűbb úgy megoldani, hogy (oszloponként) a makró bemenete egy olyan terület, amit a következők alapján állítunk elő:
- az előző oszlop szűrése (a kiválasztott szöveg)
- az első elem címe (MATCH-el kinyerhető)
- a hozzá tartozó sorok száma (COUNTIF-fel kinyerhető)
- a választandó terület (OFFSET-el elkészíthető a fentiekkel)A makró csak annyit csinálna, hogy a megkapott listából kitörli a duplikált/üres elemeket és visszaadja a deduplikált tömböt. Ahogy néztem ezt segédtábla nélkül nem lehet megcsinálni.Úgy látom egész nap ültem rajta és már megcsinálta valaki... Sajnos a fájlt nem tudom megnézni, majd este ránézek
-
lappy
őstag
-
amaps
csendes tag
Szia!
Szuper, köszönöm a tippet!
Annyi csak a gondom, hogy nekem a tételek közt 300+ fajta termék van. Ha ezt a megoldást választom, akkor létre kell hoznom első körben ezt a több, mint 300 különféle termékhez tartozó oszlopot. De ha nincs más megoldás, akkor persze megcsinálom, elég munkás ugyan, mert át kell írnom a jelenlegi struktúrát, de ez van.Valami olyasféle megoldás nincs, hogy a lista paraméterénél figyelembe veszi változóként az előzőleg kiválasztott értéket? Tök láma vagyok excelhez, de valami olyasmi, hogy a Lista/Forrásnál valahogy lehessen szűrni azokra az értékekre, ahol az első oszlop mondjuk gyümölcs?
Köszi,
amaps -
Apollo17hu
őstag
törölhető
-
lappy
őstag
-
amaps
csendes tag
Sziasztok!
Próbálom megoldani az alábbi gondomat, de eddig még nem jöttek be az ötleteim.
Adott az alábbi munkalap:Ebből szeretnék külön munkalapon egy legördülő menüs választási lehetőséget csinálni, ahol mondjuk az első cellában megadható hogy gyümölcsről, vagy díszfáról van szó. A második cellában már csak azok az elemek jelennek meg, amik beleesnek a kategóriába, pl. gyümölcs kijelölése után már csak az alma, meggy, szilva látható, és így tovább.
A valóságban persze sokkal nagyobb a tétellistámKöszi a segítséget!
amaps -
bozsozso
őstag
Sziasztok,
Van arra valami megoldás, hogy
pl.: A2-A27 cellák tartalma a =Munka1!A2 Az A28 tartalma =A2&" összesen:" Szeretném ha egyszerűen amikor lehúzom a cellákat akkor A28-A51 cellák tartalma =Munka1!A3 A52 tartalma =A28&" összesen:"
és így tovább folyamatosan. Tehát mindig ugyan annyi sorról beszélünk és ugyanolyan tartalomról csak másik munkalapról venné a következő cellát. -
hallgat
csendes tag
Sziasztok!
Szeretnék egy parancsgomb - már meglévő makrója elé - egy elágazást tenni.
A dolga az lenne, hogy megvizsgál 3 nevesített cellát, tehát pl.: nem A4-et, hanem a jelenleg A4-ben lévő ALPHA_2X2 elnevezésű cellát, aminek helye változhat, de a makrónak akkor is ezt a cellát kellene keresnie.
Szóval megvizsgálja, hogy üres e. Ha igen, megáll a makró, ad egy msgbox üzenetet, amire kattintva nem folytatja a makrót, hanem visszaáll a futtatás előtti állapotra, azaz end sub lenne az ág kimenete.
Ha nem üres ez a 3 cella, akkor tovább futtatja a makrót, a már most is benne lévő parancsok végrehajtásával.Az if-vel még csak csak elboldogulnék, de erről a nevesített cella hivatkozásról lövésem sincs
No nem mintha a többit nagyon értenémElőre is köszönöm a segítséget!!!
Új hozzászólás Aktív témák
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most kedvező áron!
- Jogtiszta Windows - Office & Vírusirtó licencek- Azonnal - Számlával - Garanciával - Nint.hu
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- BESZÁMÍTÁS! 4TB Western Digital Purple SATA HDD meghajtó garanciával hibátlan működéssel
- LG 55C2 - 55" OLED evo - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - A9 Gen5 CPU
- BESZÁMÍTÁS! Logitech G923 Driving Force Racing Wheel + Shifter garanciával hibátlan működéssel
- BESZÁMÍTÁS! Apple MacBook Pro 14 M4 Max 36GB RAM 1TB SSD macbook garanciával hibátlan működéssel
- Gamer PC-Számítógép! Csere-Beszámítás! Mini PC! I5 10600KF / RTX 3060 12GB/ 16GB DDR4 / 1TB SSD
Állásajánlatok
Cég: FOTC
Város: Budapest