Hirdetés
- 
			  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
- 
			
			  Pakliman tag 
- 
			
			  Fferi50 Topikgazda válasz  BEndre34
							
							
								#48194
							
							üzenetére BEndre34
							
							
								#48194
							
							üzenetéreSzia! 
 Próbáld meg a következő tömbképletet az A2 cellába:=SZUM(($B2:$R2=1)*($C2:$S2=""))
 A képlet záró oszlopát módosítsd a számodra megfelelő módon (pl. $BH2 és $BI2), fontos, hogy a második rész egy oszloppal legyen eltolva az elsőhöz képest.
 A tömbképletet Shift + Ctrl + Enter kombóval kell lezárni, az Excel kapcsos zárójelbe teszi.
 Ez a képlet húzható lefelé.
 Üdv.
- 
			
			  BEndre34 tag Szia! Próbáltam (az elsők között), de sajnos van ahol 2, van ahol már 5 "1"-es szerepel egymás mellett és nem tudom megadni neki, hogy "n" darabig (az első egyezés utáni első üres celláig) ellenőrizze. Illetve azt se, hogy hol kezdje újra az ellenőrzést az első találat után. Ez szerintem egy összetett Excel képletnek is túl sok.   
- 
			
			  BEndre34 tag válasz  Pakliman
							
							
								#48190
							
							üzenetére Pakliman
							
							
								#48190
							
							üzenetére Nem értem, de működik (holnap utánanézek, mert így tanul az ember) Nem értem, de működik (holnap utánanézek, mert így tanul az ember)
 Annyi, hogy ahol közvetlenül egymás után(mellett) szerepel 1, azokat is csak simán 1-nek vegye, ahogy nálad a 3 egymás melletti 1-es esetében, ami az én szempontomból nem hiba, hanem a cél.  Tehát ahol önmagában 1-van azt is, és ahol közvetlenül egymás mellett bármennyi 1-es szerepel, azt is csak 1-nek vegye. Azaz a Te példádban nem 2 kell, hogy megjelenjen, hanem 5 (van 2 különálló 1-es és 3 közvetlen egymás melletti 1-es).   Mindenesetre ez számomra fény az alagút végén.   
- 
			
			  Pakliman tag válasz  BEndre34
							
							
								#48188
							
							üzenetére BEndre34
							
							
								#48188
							
							üzenetéreSzia! Public Function xDB(r As Range) As Long
 Dim c As Range
 Dim s As String
 
 For Each c In r.Cells
 s = s & IIf(s = "", "", ";") & IIf(IsEmpty(c), Chr(1), c.Value)
 Next c
 s = Replace(s, "1;1", "")
 xDB = Len(s) - Len(Replace(s, "1", ""))
 End FunctionCsak azokat az 1-eseket számolja, amelyik mellett nincs 1-es 
 (hiba: 3 egymás mellettit viszont már 1-nek számol!!).Ha jól értelmeztem a feladatot...  
- 
			
			  BEndre34 tag Sziasztok! Adott egy Excel tábla. Az elképzelésem az lenne, hogy meg szeretném számolni, soronként külön-külön, mennyi olyan nap van, ahol "1" szerepel. A probléma, amit nem tudok megugrani az, hogy az egymást követő egyeseket "1"-nek kellene számolnom. Azaz A2-ben 2-nek, A3-ban szintén 2-nek, A4-ben 3-nak, A6-ban 2-nek és így tovább kellene szerepelnie. Külön probléma, hogy jelenleg a BH oszlopnál van a táblázat "vége", de ez még bővülni fog további oszlopokkal. Képletekkel próbáltam (egymásba ágyazottal is), de sehogy sem lesz jó.  Feltételezem, a makró lenne a megoldás, de abban sajnos láma vagyok, illetve nem találtam rá megoldást (pedig az hittem a Google és én jóban vagyunk). Feltételezem, a makró lenne a megoldás, de abban sajnos láma vagyok, illetve nem találtam rá megoldást (pedig az hittem a Google és én jóban vagyunk).  Ha tudtok segíteni, előre is köszönöm!!   
 Endre(természetesen holnap tiszta fejjel, próbálom tovább mindentől függetlenül, de jelenleg nem látom, mi lenne a megoldás) 
- 
			
			  moma őstag Ez valami nagyon basic lehet, de nem értem  
 két szöveges cellát hasonltanék össze. beírom: =EXACT(G2,M2) és nem csinálja, hanem csak ott van a cellában ez a szöveg. ha átrakom a cella formátumát másra akkor is ez van és Formulas/CAlculation options automaticon van, de ha Calculate now-ra nyomok sem csinálja.
 Mit csinálok rosszul? 
- 
			
			  Pakliman tag válasz  Dilikutya
							
							
								#48180
							
							üzenetére Dilikutya
							
							
								#48180
							
							üzenetéreSzia! ez a megoldás Nálad is használható lehet kis átalakítással (feltéve, ha nem több 10E-nyi sorral dolgozol, mert akkor egy pöttyet "belassul"  ). ).
- 
			
			  Delila_1 veterán válasz  zsoci0914
							
							
								#48179
							
							üzenetére zsoci0914
							
							
								#48179
							
							üzenetéreSzóval érvényesítést alkalmazol, és az adott sor valamelyik cellájába kell beírni a dátumot. A makrót a laphoz kell rendelned, és majd makróbarátként kell mentened a füzetet. Private Sub Worksheet_Change(ByVal Target As Range)If Target.Column = 1 ThenApplication.EnableEvents = FalseSelect Case Target.ValueCase "Beérkezve": Cells(Target.Row, "M") = Format(Now, "yyyy.mm.dd hh:mm:ss")Case "Gyártás alatt": Cells(Target.Row, "N") = Format(Now, "yyyy.mm.dd hh:mm:ss")Case "Kész": Cells(Target.Row, "O") = Format(Now, "yyyy.mm.dd hh:mm:ss")Case "Kiszállítva": Cells(Target.Row, "P") = Format(Now, "yyyy.mm.dd hh:mm:ss")End SelectApplication.EnableEvents = TrueEnd IfEnd Sub
- 
			
			  Dilikutya félisten Hello! Van egy tábla, névsor, a nevek egységekbe rendezve, minden név mellett értékek. Olyan átlagolás kellene (ha megoldható), hogy szűrővel kiválasztok egy egységet, és egy mezőben hozza az egységhez tartozó nevek melletti értékek átlagát. 
- 
			
			  zsoci0914 csendes tag válasz  Delila_1
							
							
								#48177
							
							üzenetére Delila_1
							
							
								#48177
							
							üzenetére  
 Erről lenne szó.
 Az A oszlop legördülő menü, kiválasztok egy "státuszt" beérkezve például és akkor az M oszlopban megjelenik a dátum. Aztán megváltoztatom "gyartas alatt"-ra akkor pedig az N oszlopban a változtatás dátuma, ugyanígy "kész" az O, "kiszallitva" a P oszlopban, és persze az előző maradjon meg.
- 
			
			  spe88 senior tag válasz  sztanozs
							
							
								#48165
							
							üzenetére sztanozs
							
							
								#48165
							
							üzenetéreSzia! Ha jól értettem akkor a transpose-os kódot tömbképletként kell használnom. 
 A baj, hogy így mindig csak az első előfordulásnál levágja. Kb. mintha egy BAL fv.-t használnék.Kb egy a képen látható dolgot szeretnék elérni, hogy az az A1 cella értékei jelenjenek meg egymás alatt a C oszlopban. Ha erre jó amit írtál, akkor valahol elcseszem. Köszi 
- 
			
			  Delila_1 veterán válasz  zsoci0914
							
							
								#48176
							
							üzenetére zsoci0914
							
							
								#48176
							
							üzenetéreNem írtad, hogy mi adja a lehetőségeket. Érvényesítés, ComboBox a munkalapon, esetleg ComboBox Userformon. Azt sem írtad, melyik sorba kéred a dátumot és időt. 
 Találomra vettem azt az esetet, mikor a munkalapon van egy ComboBox, és az A oszlopban folyamatosan vannak adatok.
 A laphoz rendeltem egy makrót, ami az első üres sorba írja ki a választásnak megfelelően a B, C, D, ill. az E oszlopba. A választási lehetőségek "B oszlopba dátum", "C oszlopba dátum", ...
 Megeshet, hogy egészen másról van szó, akkor írd meg pontosan, mit szeretnél.Private Sub ComboBox1_Change()Dim usor As Longusor = Range("A" & Rows.Count).End(xlUp).Row + 1Select Case Left(ComboBox1, 1)Case "B": Cells(usor, 2) = Format(Now, "yyy.mm.dd hh:mm:ss")Case "C": Cells(usor, 3) = Format(Now, "yyy.mm.dd hh:mm:ss")Case "D": Cells(usor, 4) = Format(Now, "yyy.mm.dd hh:mm:ss")Case "E": Cells(usor, 5) = Format(Now, "yyy.mm.dd hh:mm:ss")End SelectEnd Sub
- 
			
			  zsoci0914 csendes tag Először is boldog új évet mindenkinek!  
 Másodsorban, én is ilyen dátum kérdéssel érkeztem, csak szeretném kicsit tovább bonyolítani.
 Tavaly a segítségetekkel megoldódott a legördülő menüben választás során a sor színezés.
 Amit köszönök szépen ismét!
 Megoldható-e esetleg az, hogy mikor kiválasztok egy opciót, akkor egy meghatározott oszlopban megjelenjen az aznapi dátum (esetleg pontos idő is?) ami ott is marad?
 Majd ha egy másik opciót választok a legördülő menüből akkor ismét megjelenjen a dátum egy másik meghatározott oszlopban és az szintén megmaradjon?
 Tehát: legördülő menüben van 4 féle lehetőségem.
 Kiválasztom az elsőt és a sor végén megjelenik a dátum,
 Módosítom a "státuszt" a következőre és a következő oszlopban megjelenik a dátum szintén és így tovább.
 Köszönöm  
- 
			
			  kipser tag válasz  Fferi50
							
							
								#48170
							
							üzenetére Fferi50
							
							
								#48170
							
							üzenetéreSzia! Tudsz segíteni a macroban? Van egy kész sablonom. Legyen a neve sablon. 
 Van egy adattáblám. Legyen a neve adatok.Így kellene megoldanom, hogy: Adatok F oszlop elemei kerüljenek a sablon B10 mezőjébe 
 Adatok X oszlop elemei kerüljenek a sablon B6 mezőjébe
 Adatok Y oszlop elemei kerüljenek a sablon B7 mezőjébe
 Adatok Z oszlop elemei kerüljenek a sablon B5 mezőjébeMinden más adat maradjon a sablonban és mindegyikből készüljön új excel file. Köszönöm szépen!   
- 
			
			  kipser tag Sziasztok! Egy excel táblán, amiben soronként vannak autók(70db) Oszloponként az autó tulajdonságai. 
 Meg kellene oldanom valahogyan hogy minden sorból egy külön excel fájl generálódjon az oszlopokban lévő adatokkal egy sablonnak megfelelően.
 van erre ötletetek, hogy hogyan lehetne megodani a legegyszerűbben?
 köszi
- 
			
			VBA-val kell egy Split makró, ami megcsinálja: Public Function SPLITTEXT(Text, Optional Separator = "") As Variant
 If Separator <> "" Then
 SPLITTEXT = Split(Text, Separator)
 Else
 SPLITTEXT = Split(Text)
 End If
 End FunctionUtána a következő worksheet függvénnyel lehet sorokba szétszedni: =TRANSPOSE(SPLIT(A1, ","))
 Office 365-ben nem is kell Array (CTRL+ENTER) forma a beíráshoz, megcsinálja magától a kiterjesztést.
- 
			
			  spe88 senior tag Létezik olyasmi (tömb)függvény ami egy cellában lévő adatból az adott karaktereket megtalálva szétbontja különböző soroknak a celláiba. 
 Úgy mint ahogyan a Word teszi a ^p paranccsal a csere funkcióban.
 Excelben nincs ilyen ^p funkció, de amúgy is a képlet lenne az igazi.Létezik ilyen? Valami kerülő megoldás is érdekel, mert gondolom olyan egyszerűen nem lehet ahogy a Wordben. Keressem esetleg ki az 1. ... n előfordulásukat és közép fv-nyel a következő előfordulásig? Köszi 
- 
			
			Meg lehet valahogy oldani, hogy Táblázat-ot használva lefixáljunk egy mezőt (mintha sima range lenne)? Ha elhúzom a függvényt, akkor "odéb húzza" a táblázat mezőjét is: B1: = XLOOKUP($A1, Table1[col1], Table1[col2])
 ez eggyel jobbra húzva ez lesz:C1: = XLOOKUP($A1, Table1[col2], Table1[col3])
- 
			
			  lumpy92 aktív tag Sziasztok! 
 Excel makrózást (VBA programozást) hol érdemes elkezdeni tanulni?
 Van néhany könyvem, illetbe nyilván Udemy, youtube, stb. rengeteg az anyag.
 Mégis van valami ajánlott, amin tematikusan ha végigrágja magat az ember, akkor kap egy jó, átfogó tudást?
 Újévi lendület....  
- 
			
			
- 
			
			  tgumis tag Sziasztok! Csinálok egy raktár nyilvántartó táblázatot. Az adatok a bevitel munkalapról kerülnek át az anyagmozgás munkalapra. Mindkét munkalapon táblázatként van formázva az érintett tartomány. 
 A problémám az, hogy a legelső adatáttöltés alkalmávan bentmarad a fejrész alatt egy üres sor.
 Nem tudom azt megoldani, hogy az kikerüljön onna, mert csak az első áttöltés alkalmával gond ha manuálisan kitörlöm akkor nem gond de minden negyedév vagy amikor újra kezdjük feltölteni az adatokat előjön.
 Van valami megoldás vajon?
 Innen másolok: és ez a makró ami áttölti ( a kommentelés nem minden esetben valós csak ott maradt) Sub SzurMasolBeill()
 
 
 
 Dim WSBev As Worksheet
 Dim WSAnyagM As Worksheet
 Dim Bsor As Long
 
 
 
 Dim Usor As Long
 Application.ScreenUpdating = False
 
 'értékadások
 Set WSBev = Sheets("BEVITEL") ' a BEVITEL munkalap makróban elnevezett neve
 Set WSAnyagM = Sheets("ANYAGMOZGÁSOK") ' az összesít munkalap makróban elnevezett neve
 
 Bsor = WSAnyagM.Range("A" & Rows.Count).End(xlUp).Row + 1 ' AZ IDÉZŐJEL KÖZÖTT LÉVŐ BETŰ azt jelenti hogy aZ ADOTT Oszlopba utolsó sor
 ' plusz egy fogom illeszteni az adatokat
 ' ITT CSAK AZT ADOM MEG HOGY HOVA ILLESZTEK BE
 ' A BSOR LEHETNE BÁRMI EZ CSAK ELNEVEZÉS
 
 Usor = WSBev.Range("A12").End(xlDown).Row
 
 WSBev.ListObjects("Bevitel").Range.AutoFilter Field:=12, Criteria1:="<>0", Operator:=xlAnd 'NULLÁTÓL KISSEBB ILLETVE NAGYOBB ÉRTÉKEKRE SZŰRÉS
 
 WSBev.Range("A12:N" & Usor).SpecialCells(xlCellTypeVisible).Copy 'csak a látható, nem rejtett sorokat másolja
 
 WSAnyagM.Range("A" & Bsor).PasteSpecial xlPasteValues 'ITT ADOM MEG HOGY BEIELLESZTSE A MÁSOLT ADATOKAT AZ
 'IDÉZŐJELEK KÖZT MEGADOTT OSZLOP PLUSZ A BSOR BAN
 'MEGHATÁROZOTT UTOLSÓ PLUSZ EGY SORBa
 
 Dim Csor As Long
 Csor = WSAnyagM.Range("A" & Rows.Count).End(xlUp).Row 'tartomány átméretezéséhez kell ey új változó itt megadom, neki, hogy melyik az utolsó adarot tartalmazó sor az A oszlopban
 
 
 
 WSAnyagM.ListObjects("Anyagmozgások").Resize Range("$A$3:$N$" & Csor) ' itt pedig átméretezem a táblázatot
 
 WSBev.ListObjects("Bevitel").Range.AutoFilter Field:=12
 
 
 Application.ScreenUpdating = True
 End Sub
- 
			
			  Delila_1 veterán válasz  KaliJoe
							
							
								#48152
							
							üzenetére KaliJoe
							
							
								#48152
							
							üzenetéreMég mindig nem teljes. Mi van akkor, ha nincs 0-nál nagyobb értékű 5 oszlopod? 
 Átalakítottam úgy, hogy soronként jó eredményt kapj.A Z2 cella képlete =HAHIBA(MAX(HA(HOL.VAN(0;A2:X2;0)<6;INDIREKT("A" & SOR()&":" & CÍM(SOR();HOL.VAN(0;A2:X2;0)-1;4;1)); INDIREKT(CÍM(SOR();HOL.VAN(0;A2:X2;0)-1;4;1) & ":" & CÍM(SOR();HOL.VAN(0;A2:X2;0)-5;4;1))));MAX(A2:X2))
 ezt másolhatod lefelé.
 Akkor is működik, mikor csakis nulla értékek vannak egy-egy sorban. 
 Zöld hátteret adtam a sorokban a MAX aktuális tartományának.
- 
			
			  Pakliman tag válasz  andreas49
							
							
								#48151
							
							üzenetére andreas49
							
							
								#48151
							
							üzenetéreSzia! Egy lehetőség:  
 =HA(DARABTELI($A$1:A1;A1)=1;SZUMHA(A:A;A1;B:B)/DARABTELI(A:A;A1);"")
 Az első DARABTELI-nél FONTOS a $A$1:A1! Ez adja meg a dátum első előfordulását és csak ennél lesz átlag számolva. Természetesen működik e nélkül is.A sorazonosítót nem tudom igazítani. Egy megoldás van, ha az A oszlopban "lehúzod" az =SOR() függvényt majd az A oszlopra beállítod a függőlegesen középre igazítást. 
- 
			
			  KaliJoe tag válasz  Fferi50
							
							
								#48150
							
							üzenetére Fferi50
							
							
								#48150
							
							üzenetéreSziasztok, Köszönet mindenkinek,      aki hozzászólt. Meglett az eredmény és helyesen működik. Ha másnak is kellene ilyen ideírom a megoldást: aki hozzászólt. Meglett az eredmény és helyesen működik. Ha másnak is kellene ilyen ideírom a megoldást:
 Megoldás: =MAX(INDIREKT(HAHIBA(CÍM(4;HOL.VAN(0;A4:X4;0)-5;4;1) & ":" & CÍM(4;HOL.VAN(0;A4:X4;0)-1;4;1);"T4:X4")))
 Megjegyzés: a CÍM(?... utáni első szám a sor száma, ahol keresni kell, tehát változtatandó. A példában én a 4-es sort illesztettem be! A HAHIBA függvénnyel kiegészítve még hibamentesre is lehet fejleszteni, akkor ha eléri a tábla jobb szélét (adat kerül már a viszgált utolsó napra is), nem hullik szét!
 Még egyszer köszönöm. Megoldódott!      
- 
			
			  andreas49 senior tag Sziasztok, BÚÉK Mindenkinek, 
 Átlagot kellene számoltatnom egyazon naphoz tartozó értékekre. jó lenne, ha ez lehúzható is lenne. Napon belüli értékek száma eltérhet (nekem ez okozta a problémát).
   
 Másik kérdésem a sorazonosítón belüli igazítás, hogyan lehet a számokat (sorazonosító) függőlegesen középre igazítani (sormagasságok nem azonos értékűek)
 
 Segítséget előre is köszönöm.
- 
			
			  KaliJoe tag válasz  Fferi50
							
							
								#48144
							
							üzenetére Fferi50
							
							
								#48144
							
							üzenetéreSzia Fferi50, Sajnos nem működik a megoldásod. #ÉRTÉK hibát jelez, ha beírom. Sőt, képlet kiértékelésekor már az INDIREKT függvénynél megjelenik az #ÉRTÉK hiba. Mint mondtam az E9, F9 cellákban azok a CÍM-mel kezdődő függvények vannak, amelyeket az eredeti kérdésben odaírtam. 
 Lehet, hogy a problémám redukálható arra, hogy hogyan lehet a MAX függvénynek tartományt átadni, ha az maga is függvényekből áll össze.Más: 
 Kipróbáltam Lappy megoldását. Igazából csak félsiker. Valójában működik a dátumokkal, mivel a nap folyamán folyamatosan töltöm az oszlopot, attól függ hány óra van (vagyis melyik sorban van már 0.0-tól eltérő adat, attól függően kéne - soronként - a MAX függvénynek figyelembe vennia a mai napot, vagy tegnaptól nkeresni az értékeket. Ahogy Lappy megadta működik egész napra, de nem attól függően, h a mai napi ellában már megjelent az adat vagy sem. Szóval ez csak félig jó nekem.Fáradozásaitk előre is köszönöm. 
- 
			
			  KaliJoe tag Szia Lappy, Nem értettél meg. Nem dátumok közötti MAX-MIN értékek érdekelnek. Naponta 7 új adatom keletkezik (nem dátum típusú - sima szám), ezeket rendezem naponta egy oszlopba (7 sorba). Ezek közül kell kiválasztani az utolsó 5 oszlopot, amely már adatokkal feltöltött. Én arra gondoltam, h megkeresem az első nulla értéket (az lesz a még nem töltött nap) és az eggyel előtti és a hattal előtti oszlopok tartományát adom át a MAX függvény számára. Tehát NEM időpontok között kell választanom, illetve MAX-MIN értékeket keresnem. 
- 
			
			  KaliJoe tag Sziasztok, Boldog Új Évet kívánok! A problémám egy hivatkozás megszerkesztésével van. Tartományt kellene átadni a MAX függvény számára. Kicsit bővebben: Van egy - folyamatosan töltött - 7 soros, 24 oszlopos táblázatom. Az elején már vannak adataim, a végefelé még 0.0-s értékek vannak. Azt szeretném, elérni, hogy a MAX és MIN függvényeim mindig csak az utolsó 5 (nap) adataiból válasszanak MAX és MIN értékeket (tehát ne az összes 24 oszlopból). HOL.VAN függvénnyel megkerestem, hogy melyik az az első oszlop, ahol még 0.0 az érték, vagyis e nap előtt és még vissza 5 nappal kellene az oszlopokat átadni a MAX-MIN számára. Odáig meg is vagyok, hogy pl. meg tudom adni, hogy az egészből a P2:U2 tartományt figyelje. 
 Így az E9-ben: =CÍM(2;HOL.VAN(0;A2:X2;0)-1;4;1) és
 így az F9-ben: =CÍM(2;HOL.VAN(0;A2:X2;0)-6;4;1)
 G9-be meg összefűzöm őket: =F9 & ":" & E9; de ez így még csak karaktersor, nem pedig tartományhivatkozás!
 Ott mondok csődöt, hogy ezt hogyan tudom úgy átadni a MAX és MIN függvények számára, hogy az - továbbra is - tartományhivatkozás legyen?!
 Az INDEX és INDIREKT függvényekkel próbálkozom, de mindig hibához jutok, és a MAX nem eszi meg.Tud valaki segíteni? Előre is köszönöm. 
- 
			
			válasz  dreizwanzig
							
							
								#48138
							
							üzenetére dreizwanzig
							
							
								#48138
							
							üzenetére1) Filter 
 2) Cellák kijelölése
 3) Find & Search > GoTo Special...
 4) Visible cells only
 5) Conditional formatting ...
- 
			
			  dreizwanzig aktív tag Sziasztok! Olyan kérdésem lenne, hogy hogyan tudom azt megoldani, hogy feltételes formázást akarok elég sok sorra, de nem az összesre, ami a táblázatban van. Azt, hogy melyik sorokat akarom feltételesen formázni, úgy tudnám kijelölni, hogy leszűröm, viszont ha leszűröm, kijelölöm az összes sort, akkor azokra a sorokra is alkalmazni fogja a feltételes formázást, amikre nincs szűrve. 
 Tehát mondjuk az 1-es meg a 100-as sorra akarok ilyen feltételes formázást, leszűröm a táblázatot ezekre a sorokra, beállítom a feltételes formázást, de akkor a 2-től 99-ig is alkalmazni fogja a feltételes formázást.
- 
			
			  whitezo88 nagyúr Sziasztok, fg. kérdés lenne, ezer éve nem használtam. Adott egy lista (táblázatba szedve), kéne az hogy egyes elemek hányszor vannak benne. Darabteli-re gondoltam, egyenként szedve, de van 20 db fajta, van egyszerűbb is? 
- 
			
			
- 
			
			  dugynok senior tag Sziasztok! Segìtséget szeretnék kérni :) 
 Àtlagàrat szeretnék szàmoltatni, de olyan formàban, hogy első nap veszek 1db terméket 10Ft-ért, màsodik nap 3 terméket összesen 80Ft-ért, harmadik nap 5 terméket összesen 40Ft-ért. Csak úgy tudom képletezni, hogy először külön minden napi vàsàrlàsnak csinàlok egy egységàras szàmìtàst (pl. 80/3) majd az ìgy kapott egységàrakat àtlagolom vagy van egy egyszerűbb módja?Köszönöm 
- 
			
			  Fferi50 Topikgazda válasz  karlkani
							
							
								#48128
							
							üzenetére karlkani
							
							
								#48128
							
							üzenetéreSzia! 
 A figyelmetlenség netovábbja részemről... 
 Fussunk neki ismét:Sub modosit()Dim a As String, cl As RangeFor Each cl In ActiveSheet.UsedRange.Columns("A").Cells 'az A helyére írd az adataid oszlopátIf InStr(cl.Value, "/") > 0 Thena = cl.Texta = Left(a, InStrRev(a, "/")) & "valami1" & Mid(a, InStrRev(a, "/")) ' a valami1 legyen idézőjelek közötta = Left(a, InStrRev(a, ".") - 1) & "_valami2" & Mid(a, InStrRev(a, "."))cl.Value = aEnd IfNextEnd Sub
 Üdv.
- 
			
			  karlkani aktív tag válasz  Fferi50
							
							
								#48127
							
							üzenetére Fferi50
							
							
								#48127
							
							üzenetéreHa jól látom, az előzőhöz képest annyi történt, hogy lemaradt a +1, a végeredmény ugyan az... 
 Eddig én is eljutottam a régivel, csak a végére, a kiterjesztés elé nem sikerül a _valami2-t beilleszteni. Csere funkcióval azt is megoldottam .m3u8 => _valami2.m3u8. Jó lenne, ha egy kattintásra meg lehetne oldani a makró segítségével (egy gombhoz van hozzárendelve).A linkekben elöl is van egy PONT, a _valami2 bekerül a .com elé is... 1*file*https://abcdefg_valami2.com/abc/123456789/valami1/123456789_valami2.m3u8Erre lenne szükség 1*file*https://abcdefg.com/abc/123456789/valami1/123456789_valami2.m3u8#48126 Fire/SOUL/CD 
 Köszönöm!Elrakom ezt is... 
- 
			
			  Fferi50 Topikgazda válasz  karlkani
							
							
								#48124
							
							üzenetére karlkani
							
							
								#48124
							
							üzenetéreSzia! 
 Igen, ilyen az amikor próba nélkül a régiből kiindulva alakítok át valamit.
 Ez elvileg már jó lehet:Sub modosit()Dim a As String, cl As RangeFor Each cl In ActiveSheet.UsedRange.Columns("A").Cells 'az A helyére írd az adataid oszlopátIf InStr(cl.Value, "/") > 0 Thena = cl.Texta = Left(a, InStrRev(a, "/")) & "valami1" & Mid(a, InStrRev(a, "/")) ' a valami1 legyen idézőjelek közötta = Replace(a, ".", "_valami2.")cl.Value = aEnd IfNextEnd Sub
 Ismételten bocs.
 Üdv.
- 
			
			válasz  karlkani
							
							
								#48125
							
							üzenetére karlkani
							
							
								#48125
							
							üzenetéreOk, akkor amennyire lehet "bolondbiztossá" tettem a kódot...(ne vedd magadra)  
 Az elején a 2 konstanst kell csak módosítani, nem kell bele se alulvonás, se pont se semmi, csak tiszta szöveg legyen.'Fire/SOUL/CD - 2021
 Option Explicit
 Public Function Fire_Replace(ByVal SourceURL As String) As String
 Const SLASH = "/"
 Const DOT = "."
 Const UNDERSCORE = "_"
 'Itt add meg a VALAMI1 és VALAMI2 értékét... :))
 '(nem kell alulvonás, se pont, se más, csak szöveg)
 Const SOMETHING_1 = "VALAMI1 SZÖVEGE"
 Const SOMETHING_2 = "VALAMI2 SZÖVEGE"
 Dim MyStrArray() As String
 
 MyStrArray = Split(SourceURL, SLASH)
 If WorksheetFunction.CountA(MyStrArray) > 1 Then
 
 Fire_Replace = MyStrArray(0) & SLASH & _
 MyStrArray(1) & SLASH & _
 MyStrArray(2) & SLASH & _
 MyStrArray(3) & SLASH & _
 MyStrArray(4) & SLASH & _
 SOMETHING_1 & SLASH & _
 Replace(MyStrArray(5), DOT, UNDERSCORE + SOMETHING_2 + DOT)
 
 Else: Fire_Replace = MyStrArray(0)
 
 End If
 End Function
- 
			
			  karlkani aktív tag válasz  Fire/SOUL/CD
							
							
								#48123
							
							üzenetére Fire/SOUL/CD
							
							
								#48123
							
							üzenetéreVegyél lottószelvényt!  
 Valóban lehagytam a szöveg végéről a pontot...
- 
			
			  karlkani aktív tag válasz  Fferi50
							
							
								#48121
							
							üzenetére Fferi50
							
							
								#48121
							
							üzenetéreSajnos nem jó, ezt kapom... 1*file*https://abcdefg_valami2.com/abc/123456789/valami_123456789_valami2.m3u81*title*1. lista címe2*file*https://abcdefg_valami2.com/abc/23456789/valami_23456789_valami2.m3u82*title*2. lista címe3*file*https://abcdefg_valami2.com/abc/234567890/valami_234567890_valami2.m3u83*title*3. lista címeErre lenne szükség 1*file*https://abcdefg.com/abc/123456789/valami1/123456789_valami2.m3u81*title*1. lista címe2*file*https://abcdefg.com/abc/23456789/valami1/23456789_valami2.m3u82*title*2. lista címe3*file*https://abcdefg.com/abc/234567890/valami1/234567890_valami2.m3u83*title*3. lista címe
- 
			
			
- 
			
			  karlkani aktív tag válasz  Fire/SOUL/CD
							
							
								#48120
							
							üzenetére Fire/SOUL/CD
							
							
								#48120
							
							üzenetéreKöszönöm! Az eredetire adatokra nincs szükség, azt kellene módosítani a makrónak. Megcsináltam, lehúztam a képletet végéig (több száz sor), megcsinálta. Aztán visszamentem a modulba, átírtam, amit kell, erre úgy szarrá fagyott az egész gép, hogy öröm volt nézni. Szerencsére bezáródott az excel néhány perccel később. Megnyitottam a füzetet, majd a modult, erre megint 100% a processzorhasználat, a modul fejléce meg villódzik, hogy rohadjon meg...  
- 
			
			  Fferi50 Topikgazda válasz  karlkani
							
							
								#48119
							
							üzenetére karlkani
							
							
								#48119
							
							üzenetéreSzia! 
 A módosított makró:Sub modosit()Dim a As String, cl As RangeFor Each cl In ActiveSheet.UsedRange.Columns("A").Cells 'az A helyére írd az adataid oszlopátIf InStr(cl.Value, "/") > 0 Thena = cl.Texta = Left(a, InStrRev(a, "/")) & "valami_" & Mid(a, InStrRev(a, "/") + 1) ' a valami_ legyen idézőjelek közötta=replace(a,".","_valami2.")cl.Value = aEnd IfNextEnd SubÜdv.
- 
			
			válasz  karlkani
							
							
								#48119
							
							üzenetére karlkani
							
							
								#48119
							
							üzenetéreHa jól értelmeztem, akkor 
 ebből:1*file*https://abcdefg.com/abc/123456789/123456789.m3u8legyen ez 1*file*https://abcdefg.com/abc/123456789/valami1/123456789_valami2.m3u8Ezen sorokat meg hagyja békén 1*title*1. lista címeHa igen, jól értettem, akkor Module1-be 'Fire/SOUL/CD - 2021
 Option Explicit
 Public Function Fire_Replace(ByVal SourceURL As String) As String
 Const SLASH = "/"
 Const DOT = "."
 Dim MyStrArray() As String
 
 MyStrArray = Split(SourceURL, SLASH)
 If WorksheetFunction.CountA(MyStrArray) > 1 Then
 
 Fire_Replace = MyStrArray(0) & SLASH & _
 MyStrArray(1) & SLASH & _
 MyStrArray(2) & SLASH & _
 MyStrArray(3) & SLASH & _
 MyStrArray(4) & SLASH & _
 "valami1" & SLASH & _
 Replace(MyStrArray(5), DOT, "_valami2.")
 
 Else: Fire_Replace = MyStrArray(0)
 
 End If
 End Function
- 
			
			  karlkani aktív tag Sziasztok! Adott a következő lejátszási lista, amit módosítani kellene ismét. Itt az eddig használt makró, ezt kellene úgy átírni, hogy ez legyen a végeredmény. 1*file*https://abcdefg.com/abc/123456789/valami1/123456789_valami2.m3u8
 1*title*1. lista címe
 2*file*https://abcdefg.com/abc/23456789/valami1/23456789_valami2.m3u8
 2*title*2. lista címe
 3*file*https://abcdefg.com/abc/234567890/valami1/234567890_valami2.m3u8
 3*title*3. lista címeA számokat elválasztó / után kerüljön be a valami1 és egy /, a második szám után pedig a _valami2" * A valami1 és _valami2 minden lista esetén megegyezik, Előre is köszönöm! 
- 
			
			  Fferi50 Topikgazda 
- 
			
			  morgusz csendes tag Sziasztok! 
 Beérkező hibás adatok cseréjével harcolok.
 Egy A:H oszlopokból álló tartomány D oszlopában vannak hibás adatok, amit az O1:P20 (valószínű hogy ez lista bővülni fog) tartomány adatai alapján, (O a hibás, P a jó adat) kellene javítani. Találtam itt egy makrót, amit alkalmazva a D oszlopban a rosszat kicseréli ugyan, de a jók helyett és az üres cellákban meg "#hiányzik" eredményt produkál.
 Sub csere()
 Dim cv As Object
 For Each cv In Range("A1:H10000")
 Range(cv.Address) = Application.VLookup(cv, Range("O1:P20"), 2, 0)
 Next
 End Sub
 Ha valaki tud, és ráér, kérem segítsen!
 Köszönöm!
- 
			
			  Delila_1 veterán válasz  phanfantom
							
							
								#48113
							
							üzenetére phanfantom
							
							
								#48113
							
							üzenetéreFeltöltöttem egy fájlt ide . 
 Akkor kell módosítani a makrón, ha a tartományod nem azA:Ftartományban van, vagy nem az F oszlop tartalmazza a lejárati dátumokat.
- 
			
			  phanfantom senior tag válasz  Delila_1
							
							
								#48112
							
							üzenetére Delila_1
							
							
								#48112
							
							üzenetéreTulajdonképpen most még csak kérdés illetve a specifikáció fázisában vagyok. Egyébként semmilyen különbség nincs az aktív és nem aktív bejegyzés között. Csak a lejárat dátuma. És most, hogy írok, egyre jobban meg tudom fogalmazni. Az aktívak kétfélék lehetnek. Lejárat nélküliek és lejárattal rendelkezők. A lejárat nélkülieket manuálisan kell módosítani, hogy inaktívvá váljanak. Ennek a címsornak lehet az a neve, hogy státusz. Ezt lehet soronként manuálisan módosítani. A címsor egy másik cellája a sok közül a lejárat dátuma. És ha van érték megadva egy adott bejegyzés lejáratához, akkor amint azt a dátumot elérjük, a státusz kapcsolóját magától módosítja az excel és így kikerül az aktívak közül. Azt hiszem ez lenne a feladat:) 
- 
			
			  Delila_1 veterán válasz  phanfantom
							
							
								#48111
							
							üzenetére phanfantom
							
							
								#48111
							
							üzenetéreÉs még 2 sort. Az egyikben lejárt tétel legyen, a másikban nem. 
 Pl. a képmetszővel készíthetsz egy fotót róla, és azt illeszted be ide. A képen az oszlopazonosítóknak (A, B, stb.) is látszaniuk kell.
- 
			
			  Delila_1 veterán válasz  phanfantom
							
							
								#48109
							
							üzenetére phanfantom
							
							
								#48109
							
							üzenetére[link] Add meg ... 
- 
			
			  phanfantom senior tag Köszönöm nektek  Én nem értek az excelhez sajnos. Eddig ezeket a feljegyzéseket papír alapon vezettem füzetben. Aminek persze van előnye, hiszen a füzet mindig kéznél van, nem romlik el. De nem modern a mai világban:)) Hatalmas adatmennyiség sincs, de keresni benne, csak szemmel lehet, ami nem előnyös. És ugye ami 2 lappal korábban volt, nincs szem előtt. Szóval ezért gondoltam az excelre, hogy ezen kellene változtatni. Én nem értek az excelhez sajnos. Eddig ezeket a feljegyzéseket papír alapon vezettem füzetben. Aminek persze van előnye, hiszen a füzet mindig kéznél van, nem romlik el. De nem modern a mai világban:)) Hatalmas adatmennyiség sincs, de keresni benne, csak szemmel lehet, ami nem előnyös. És ugye ami 2 lappal korábban volt, nincs szem előtt. Szóval ezért gondoltam az excelre, hogy ezen kellene változtatni.
 Vagyis időrendben követik egymást a sorok, de amik lejárnak, azokat ki kellene venni és csak az aktívaknak kellene maradniuk. Akkor is, ha az egy fél évvel korábbi feljegyzés. Kb. így tudnám ezt az egészet leírni.
- 
			
			  lappy őstag válasz  phanfantom
							
							
								#48106
							
							üzenetére phanfantom
							
							
								#48106
							
							üzenetérehttps://www.extendoffice.com/documents/excel/4133-excel-protect-cells-based-on-date.html 
 Ezt nézd meg
- 
			
			  Delila_1 veterán válasz  phanfantom
							
							
								#48106
							
							üzenetére phanfantom
							
							
								#48106
							
							üzenetéreTegyél fel egy képet, ami tartalmazza a címsort, és még 2 sort, amik közül az egyik lejárt, a másik nem. Ezek nélkül csak találgatni lehet, és utólag át kellene írnod egy halom értéket a makróban. 
- 
			
			  phanfantom senior tag Sziasztok, Alkalmas lehet arra az excel, hogy a soronként vezetett naplószerű bejegyzések státusza aktív és inaktív között automatikusan változzon? Mondjuk egy cellában lehet olyan olyan bejegyzés, amiben dátum van(lejárat), ami alkalmas lehet "kapcsolónak". Tehát arra lenne szükség, hogy mindig csak az aktív sorok legyenek elől és ne legyen egy 3 hónappal ezelőtti bejegyzés 200 sorral lejjebb, miközben az még mindig nyitott tétel. A korábbi bejegyzések pedig archiválva, akár egy másik munkalapra is kerülhetnek. Mit gondoltok? Köszi a válaszokat:) 
- 
			
			  Delila_1 veterán Private Sub Worksheet_Change(ByVal Target As Range)If Target.Column = 1 ThenApplication.EnableEvents = FalseIf Application.WorksheetFunction.CountA(Range(Target.Address)) = Target.Count ThenRange(Target.Address).Offset(, 1) = DateElseRange(Target.Address).Offset(, 1) = ""End IfApplication.EnableEvents = TrueEnd IfEnd SubHa nem az első oszlopba írsz adatot, akkor az If Target.Column = 1 Thensorban kell az 1-et átírnod az oszlop számára. Ha pedig a dátumot nem a következő oszlopba íratnád, akkor aRange(Target.Address).Offset(, 1) = ""sorban kell az 1-et annyira átírni, ahány oszloppal jobbra szeretnéd megkapni.
- 
			
			  Jonie csendes tag válasz  Delila_1
							
							
								#48100
							
							üzenetére Delila_1
							
							
								#48100
							
							üzenetéreNem csak A1 - B1 ről van szó, hanem a teljes tábla adott oszlopának minden cellájáról, még nem tudom pontosan melyik lesz az, mert a táblát ezután fogom elkészíteni, de addig nem fogtam hozzá míg ezt a dátum kitöltést nem tudtam megoldani. 
 Sor és oszlop beszúrás nem lesz, lapvédelmet teszek rá.
 Sőt, nem is A és B oszlopokban lesz alkalmazva, de Delila_1 megoldását tudtam úgy módosítani, hogy a szükséges oszlopba történő íráskor a meghatározott oszlop (még nem tudom melyik lesz az) celláiba írodjon a dátum.
 Nekem így jó, talán csak annyi, hogy ha több sort törlök egyszerre, akkor nem törlődik a már beírt dátum csak egyesével, ha erre lenne egy egyszerű megoldás, akkor már több lenne mint tökéletes. Köszönöm! Köszönöm!
- 
			
			
Új hozzászólás Aktív témák
Hirdetés
- Filmvilág
- Automobilista 2
- Amlogic S905, S912 processzoros készülékek
- Path of Exile (ARPG)
- A fociról könnyedén, egy baráti társaságban
- iPhone topik
- Samsung Galaxy Felhasználók OFF topicja
- Melyik tápegységet vegyem?
- Luck Dragon: Asszociációs játék. :)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- További aktív témák...
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32/64GB RAM RTX 3050 6GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! Microsoft XBOX One 500GB fekete játékkonzol garanciával hibátlan működéssel
- Lenovo E490 Notebook i7/16/500
- Újszerű HP 14s-dq5001nh - 14"FHD IPS - i5-1235U - 16GB - 512GB - Win11 - Magyar - Garancia
- GYÖNYÖRŰ iPhone 13 128GB Blue -1 ÉV GARANCIA -Kártyafüggetlen, MS3688, 100% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest
 
						 
								 
							 
								



 
								 
							 
  Ami még nem világos, annak is utánaolvasok. Köszönöm!!
 Ami még nem világos, annak is utánaolvasok. Köszönöm!!  
							
 
							 Nem értem, de működik (holnap utánanézek, mert így tanul az ember)
 Nem értem, de működik (holnap utánanézek, mert így tanul az ember) 
  
								
 
							 
 
 
								

 
								 
							 
								 
							 ).
 ). 
							 
								
 
								 
							 
							 
								 
								 
							
 
								 
								
 
							


 
							
 
								 
							
 
								


 
							 
								 
								 
							 
								
 
								
 
							 
							 
								 
							 
								 
							 
							 
								


