-
PROHARDVER!
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
-
Mutt
senior 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
Új hozzászólás Aktív témák
- LG UltraGear 45GX90SA-B Monitor
- Akció! Gamer PC-Számítógép! Csere-Beszámítás! I9 13900 / RTX 3090 24GB / 32GB RAM / 1TB SSD
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RTX 5050 8GB GAMER PC termékbeszámítással
- 222 - Lenovo LOQ (15IRX10) - Intel Core i5-13450HX, RTX 5050
- Lenovo ThinkPad P15 Gen 2 i7-11850H 32 GB RAM 512 GB SSD NVIDIA T1200 Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Fferi50
