-
GAMEPOD.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.
Új hozzászólás Aktív témák
-
Delila_1
Topikgazda
válasz T.Lacci #19747 üzenetére
Mindenesetre a szorzo változót állítsd át Single típusról Double típusra a Dim utasításban. Ez egy szarvashiba volt tőlem.
A Single típus egész számokkal számol -3,402823^38 és -1,401298^45, valamint 1,401298^45 3,402823^38 értékek között.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Salex1 #19750 üzenetére
Egy összesítő lapon túl sok lenne a SZUMHA függvényekből. Érdemes az egyes lapokon azonos helyen összegezni a kritériumoknak megfelelő értékeket, majd ezután az összesítő lapra munkánként 1 képlettel behozhatod a 12 lap összegét, ahogy a mellékelt ábra mutatja.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz T.Lacci #19756 üzenetére
Legtöbben Kovalcsik Gézától Az Excel programozása c. könyvet ajánlják, de sokat tanulhatsz különféle fórumokon, és a YouTube-n is nagyon jó bemutatókat találsz.
Újabban Kovalcsik feltett egy halom klassz bemutatót. Ha ezt behívod, a kereső felajánlja a "testvéreit".
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Metathrone
csendes tag
Sziasztok!
Egy olyan makróra volna szükségem, ami csak az adott munkalapon hat, ha a B oszlop valamelyik cellájába beírok bármit, akkor a mellette lévő cella (C oszlop) értéke legyen az adott napi dátum.
Köszönöm előre is a segítséget.
-
veterán
válasz Metathrone #19759 üzenetére
Sub datum()
Dim i as Integer '32ezer akárhány sorig
For i = 1 To 100
If Worksheets("Munka1").Cells(i, 2).Value <> "" Then
Worksheets("Munka1").Cells(i, 3).Value = Date
End If
Next i
End Suba Munka1 helyére a kívánt munkalap nevét írhatod, a 100-at meg annyira írod át, ahány sorig a ciklust futtatni szeretnéd.
[ Szerkesztve ]
"a jövötsajnos nemlehet tudni csakhamárotvagy deakormegmár azajelen"
-
veterán
válasz Metathrone #19761 üzenetére
na ez jó kérdés, szerintem a makrót mindenképp manuálisan kell elindítanod, egyszerűbb megoldani ezt egy HA fv-nyel a C oszlopban.
"a jövötsajnos nemlehet tudni csakhamárotvagy deakormegmár azajelen"
-
Mutt
aktív tag
válasz Metathrone #19759 üzenetére
Hello,
Az ilyen feladat tipikusan a lap Change eseményével oldható meg.
Jobb klikk a lapon és "Kód megjelenítése" opcióval a laphoz rendelhetsz makrót. A lenti kódot másold be.Annyi pluszt tettem bele hogy ha üres a cella akkor mellőle kiveszi a dátumot.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cell As Range
'csak a második, a B-oszlop esetén fusson
If Target.Column = 2 Then
'ha egyszerre több cella keül módosításra,
'akkor egyenként végigpörgetjük őket
For Each cell In Target
'ha nem üres akkor jobbra 1-el aktuális dátum, különben töröljük
If cell.Value <> "" Then
cell.Offset(, 1).Value = Date
Else
cell.Offset(, 1).Value = ""
End If
Next cell
End If
End Subüdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Metathrone
csendes tag
válasz Metathrone #19765 üzenetére
Megoldottam
-
fila
senior tag
válasz Delila_1 #19720 üzenetére
Szia!
Meg lehet azt oldani, hogy akkor összesítse csak az adatokat, ha az érték ami a cellákba van egy értéknél nagyobb?
pl.
"B" értékhez tartozó adatok 5,6,7,8,9,10
"C" értékhez tartozó adatok 4,7,8,100,200,300
akkor összesítse a szövegnek megfelelő adatokat, ha az 8 nál több?jelen esetben 19 és 600 legyen az összeg amit kapok?
Köszi előre is.
5% kedvezmény kód minden rendelésre. iherb.com: ZCD546
-
Delila_1
Topikgazda
-
fila
senior tag
válasz Delila_1 #19768 üzenetére
A szöveg értékekre ugyanúgy kellene a szűrés.
viszont csak azokat összegezze ami bizonyos érték felett van.
=szumha(tartomány1;$A1;tartomány2) van most
viszont a tartomány2-ből csak azokat összesítse ami 8 felett van.
5% kedvezmény kód minden rendelésre. iherb.com: ZCD546
-
T.Lacci
csendes tag
válasz Delila_1 #19757 üzenetére
Bocs, hogy megint alkalmatlankodom, de szeretnék kérdezni tőled valamit. A múltkor segítettél nekem a szorzo makró elkészítésében, ami ugye teljesen jól működik, de.. De nagyon lassan dolgozik és ezzel kapcsolatban lenne kérdésem. Megfigyeltem (persze lehet, hogy nem jól) ,hogy azok a makrók ahol nekem kell kézzel kijelölnöm a műveleti területet, sokkal gyorsabban dolgoznak, mint azok, ahol előre beállított terület van. Tehát amikor a makróm úgy kezdődik, hogy: Dim TER As Range Set TER = Application.InputBox(PROMPT:="JELÖLD KI A TARTOMÁNYT", Type:=8), akkor azok lényegesen hamarabb végeznek, mint pl. amit a szorzo makróban leírtál. Kérdésem az volna, hogy jól látom ezt vagy semmi köze a gyorsaságnak ehhez?
-
Metathrone
csendes tag
Sziasztok!
Autoszűrés után a kapott adatokat ki lehet valahogy jelölni makróval?
Köszi
-
Mutt
aktív tag
válasz Metathrone #19776 üzenetére
Cells.CurrentRegion.Select
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
ngabor2
nagyúr
van olyan függvény, ami sort töröl?
van egy szép nagy táblázat, amiben van 1+3 oszlop. ha az 1. oszlop tartalma szerepel a többi 3 valamelyikében, akkor azt a sort törölni kellene. létezik ilyen függvény?
gondoltam olyanra, hogy feltételvizsgálattal megnézni, hogy valamelyik oszlop tartalmazza-e az első értékét, ha igen, akkor egy segédcellába beírok egy értéket. utána kereséssel és törléssel megoldanám, de így már elég macerás. a (megmaradó) sorok sorrendje nem változhat.
-
Mutt
aktív tag
válasz T.Lacci #19775 üzenetére
Hello,
A makrót fel tudod gyorsítani a következőkkel:
1. képérnyőfrissítés kikapcsolása (ScreenUpdating)
2. események letiltása (EnableEvents)
3. objektumok létrehozása (Set parancs)
4. változók definiálása konkrét típussal (Variant mellőzése)
5. beépített függvények használata (pl. Sum egy saját összegzés helyett)
6. üres cellák ignorálásaEgy 100 ezer darabos halmazon futtattam a különböző variációkat az eredmények:
Könnyedén gyorsítható tehát az első 2 opcióval.
Sub Szorzas()
Dim tartomany As Range, cella As Range, szorzo As Double
Set tartomany = Range("D2:D" & Range("D" & Rows.Count).End(xlUp).Row)
Application.EnableEvents = False
Application.ScreenUpdating = False
For Each cella In tartomany
'Feltételek megdása
Select Case cella.Value
Case 1 To 10000
szorzo = 1.4
Case 10001 To 20000
szorzo = 1.3
Case 20001 To 30000
szorzo = 1.2
Case Else
szorzo = 0.9
End Select
'Szorzat beírása az E oszlopba
Cells(cella.Row, "E") = cella.Value * szorzo
Next
Application.EnableEvents = True
Application.ScreenUpdating = True
End SubA függvényest pedig a 19740-es hozzászólásban találod.
üdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Mutt
aktív tag
válasz Metathrone #19778 üzenetére
Set tbl = Cells.CurrentRegion
tbl.Offset(1, 0).Resize(tbl.Rows.Count - 1, tbl.Columns.Count).selectA tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Mutt
aktív tag
válasz ngabor2 #19779 üzenetére
Hello,
Függvénnyel nem oldható meg.
Ha 2010-es Exceled van, akkor feltételes formázással meg tudod színnel jeleníteni, hogy mely adat ismétlődik a többi táblázatban. A DARABTELI függvény segít ebben. A jelölésre pedig tudsz szűrni és törölni.
A makróhoz kellene egy minta. A 1+3 táblázat egy lapon van? Automatikusan kell futnia?
üdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
gyga
senior tag
delete
[ Szerkesztve ]
A kisebbség is számíít, teszkó.
-
veterán
munkalapok között szeretnék rangeket másolni, első próbálkozásra a copy_ destination:= parancs jött össze, de ez 1:1-ben másolja a range-t, formázással együtt.
a kérdésem az lenne a tapasztalt kollégákhoz, hogy mi a tartományok értékként/fv-ként történő másolásának legegyszerűbb, legparktiuksabb módja munkafüzetek és munkalapok között? köszönöm!
[ Szerkesztve ]
"a jövötsajnos nemlehet tudni csakhamárotvagy deakormegmár azajelen"
-
-
rekid
addikt
Hali!
Egy kis segítségre lenne szükségem.
Adott két munkalap ami sorraszámra és oszlopszámra ugyan az. Elvileg tartalomra is de mégsem, vannak cella tartalmak melyek eltérnek. Ezt kellene összefűznöm úgy hogy én döntöm el melyik cellatartalom a jó.
Magyarán a két munkalap ugyanazon sorait kellene összehasonlítani és az eltérőeket mondjuk listázni.Gyáva népnek nincs hazája!
-
rekid
addikt
Szia, közben tárgytalan. De köszönöm szépen.
Azonost én is megtaláltam, csak nem működik mert rengeteg az eltérés. Így bukott az az elképzelés hogy majd kézzel átírom az eltérést.
Plusz most nézem, hogy mégsem teljesen egyeznek a sorok. (Adott lekérdezés nem ugyan abban a sorrendben kérdezte le az adatokat. )Gyáva népnek nincs hazája!
-
gyga
senior tag
=ELTOLÁS(KICSI(b2:b64;1);0;-6) miért nem működik?
A kisebbség is számíít, teszkó.
-
Mutt
aktív tag
Hello,
Az eltolas elso parameterenek cellat kell megadni, a KICSI fuggveny szamot ad vissza es nem cellat. Az INDIREKT vagy INDEX fuggvennyel tudsz igazi hivatkozast eloallitani. A -6 -al nincs gond, addig ha lehet ennyit balra menni, vagyis legalabb a G oszlopbol kell indulni.
Udv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Delila_1
Topikgazda
Míg írtam, Mutt megadta a lényeget, hogy a B oszloptól számított -6 oszlop értelmetlen.
Gondolom, arra az értékre vagy kíváncsi, ami a B2:B64 tartományban a legkisebb szám, és ebben a sorban a tőle jobbra eső 6. oszlopban van.
Ezt a
=ELTOLÁS(INDEX(B:B;HOL.VAN(KICSI(B2:B64;1);B:B;0);1);0;6)
képlettel kaphatod meg.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Új hozzászólás Aktív témák
- Game Pass Ultimate előfizetések 1 - 25 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN!
- Microsoft licencek a KIVÉTELES ÁRAK - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Windows, Office licencek a legolcsóbban, egyenesen a Microsoft-tól - 2990 Ft-tól!
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Steames kulcsok jó áron eladóak!
- Eredeti Windows 10, Windows 11, Office Akció: Office 2021, Office 2019, Office 2016 csak Retail
- The Witcher 2: Assassins of Kings - nagydobozos, komplett, gépben sem volt
- Total War: WARHAMMER II - The Warden & The Paunch (DLC) Epic Games Key GLOBAL
- Microsoft Office 2019 Otthoni és vállalati verzió (PC / MAC)
- Eladó PC játékok