-
Fototrend
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
PerezT
#39811
üzenetére
Szia,
Nézd meg ezt a változatot.
Arra kell odafigyelned, hogy bérleti díjakat tartalmazó táblázatban az időszakok mindig lefedjék azt az időszakot amire számolni akarsz. A példádban ha Nagyfalu Bt-re számolnád a költségeket 2019. június 30-ig, akkor mivel most csak május végéig van bérleti díj az utolsó 1 hónapod ingyen lesz.
Tömb-képletet (CSE) használtam. Ha sok adatod van, akkor lelassíthatja az Exceled.
A képlet jelenleg a mai nappal számol (pontosabban a tegnap estig felhalmozott díjakkal), ha akarod a MA() függvényt cseréld le egy cella hivatkozásra ami tartalmazza a lejárati dátumot.
üdv
-
Delila_1
veterán
válasz
PerezT
#39811
üzenetére
Lehet, hogy nem értjük egymást.
A most feltöltött fájlban egy kimutatásban hoztam össze az egyes bérlők termékeire kifizetett összegeket. Ha csak egy bizonyos dátum tartomány értékeit szeretnéd látni, a Dátum mezőben (B17) jelöld be a kívánt időpontokat.
-
Delila_1
veterán
válasz
PerezT
#35996
üzenetére
3 helyen, a csillagozott sorokban kell módosítanod a makrót.
Nálam Munka1 a kiinduló lap neve, és Munka2, ahova átrendezve bemásolja az értékeket.A sorIde = 1: oszlopIde = 1 változók értékei adják meg, hogy a 2. lapon hol kezdődjön a tábla, ami itt az A1-es cella sora, és oszlopa.
Sub transz()
Dim sor As Long, usor As Long, sorIde As Long
Dim oszlop As Integer, uoszlop As Integer, oszlopIde As Integer
Sheets("Munka1").Select '***
uoszlop = Cells(1, Columns.Count).End(xlToLeft).Column
usor = Range("A" & Rows.Count).End(xlUp).Row
sorIde = 1: oszlopIde = 1 '***
With Sheets("Munka2") '***
For oszlop = 2 To uoszlop
For sor = 2 To usor
.Cells(sorIde, oszlopIde) = Cells(1, oszlop)
If Cells(sor, oszlop) > "" Then
.Cells(sorIde, oszlopIde + 1) = Cells(sor, 1)
.Cells(sorIde, oszlopIde + 2) = Cells(sor, oszlop)
sorIde = sorIde + 1
End If
Next
Next
End With
End Sub -
Delila_1
veterán
válasz
PerezT
#35994
üzenetére
Arra az esetre, ha az első táblázatod az A1 cellában kezdődik, egy makró gyorsan átmásolja a kívánt formába az adataidat. A makrót modulba kell tenned (lásd a Téma összefoglalóban).
Sub transz()
Dim sor As Long, usor As Long, sorIde As Long
Dim oszlop As Integer, uoszlop As Integer, oszlopIde As Integer
uoszlop = Cells(1, Columns.Count).End(xlToLeft).Column
usor = Range("A" & Rows.Count).End(xlUp).Row
sorIde = 1: oszlopIde = 15
For oszlop = 2 To uoszlop
For sor = 2 To usor
Cells(sorIde, oszlopIde) = Cells(1, oszlop)
If Cells(sor, oszlop) > "" Then
Cells(sorIde, oszlopIde + 1) = Cells(sor, 1)
Cells(sorIde, oszlopIde + 2) = Cells(sor, oszlop)
sorIde = sorIde + 1
End If
Next
Next
End Sub
Új hozzászólás Aktív témák
- Luck Dragon: Asszociációs játék. :)
- VR topik
- Kormányok / autós szimulátorok topikja
- Xiaomi 17 Ultra - jó az optikája
- Okosóra és okoskiegészítő topik
- Robogó, kismotor
- Kész rémálom lesz Linuxot használni jövőre az USA egyes államaiban
- One mobilszolgáltatások
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Teljesen az új Xboxhoz készül a neurális leképezés
- További aktív témák...
- Apple iPhone 16 Pro Max 256GB Desert Titanium használt, megkímélt 100% akku (13 ciklus) 6 hón
- Konzol felvásárlás!! Nintendo Switch
- Magyar Logitech G915 Billentyűzet lehet +33.000.- Ft ból
- Keresünk Galaxy S23/S23+/S23 Ultra/S23 FE
- -50% Dobozos Új Lenovo ThinkPad X1 gen 10 2-in-1 Ultra 7 268V 32gb ram Inter Arc 140V Gari 2030
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Fferi50