Sub FeltetelesErtekiras() Dim i As Long Dim alapErtek As Long Dim hozzaadErtekG As Long Dim hozzaadErtekE As Long Dim hozzaadErtekIJ As Long Dim hozzaadErtekL As Long Dim hozzaadErtekM As Long Dim hozzaadErtekN As Long Dim hozzaadErtekO As Double Dim hozzaadErtekP As Double Dim hozzaadErtekQ As Long Dim hozzaadErtekS As Long Dim vegsoErtek As Double Dim jErtek As Variant For i = 2 To 501 ' --- Alapérték D oszlop alapján --- Select Case Cells(i, "D").Value Case 1, 2 alapErtek = 60000 Case 3 alapErtek = 30000 Case Else alapErtek = 0 End Select ' --- Hozzáadott érték G oszlop alapján --- Select Case Cells(i, "G").Value Case 1 hozzaadErtekG = 20000 Case 2 hozzaadErtekG = 50000 Case 3 hozzaadErtekG = 100000 Case 4 hozzaadErtekG = 150000 Case Else hozzaadErtekG = 0 End Select ' --- Hozzáadott érték E oszlop alapján --- Select Case Cells(i, "E").Value Case 1 hozzaadErtekE = 50000 Case 2, 3, 4 hozzaadErtekE = 20000 Case Else hozzaadErtekE = 0 End Select ' --- Hozzáadott érték I–J oszlop alapján --- hozzaadErtekIJ = 0 If Cells(i, "I").Value = 1 Then jErtek = Cells(i, "J").Value If IsNumeric(jErtek) Then If jErtek >= 1 And jErtek <= 5 Then hozzaadErtekIJ = 80000 ElseIf jErtek > 5 And jErtek <> 99 Then hozzaadErtekIJ = 150000 End If End If End If ' --- Hozzáadott érték L oszlop alapján --- Select Case Cells(i, "L").Value Case 1 To 3 hozzaadErtekL = 10000 Case 4 To 5 hozzaadErtekL = 40000 Case 6 To 8 hozzaadErtekL = 70000 Case Else hozzaadErtekL = 0 End Select ' --- Hozzáadott érték M oszlop alapján --- Select Case Cells(i, "M").Value Case 1 To 3 hozzaadErtekM = 5000 Case 4 To 5 hozzaadErtekM = 30000 Case 6 To 8 hozzaadErtekM = 60000 Case Else hozzaadErtekM = 0 End Select ' --- Hozzáadott érték N oszlop alapján --- Select Case Cells(i, "N").Value Case 1 To 3 hozzaadErtekN = 10000 Case 4 To 5 hozzaadErtekN = 50000 Case 6 To 8 hozzaadErtekN = 100000 Case Else hozzaadErtekN = 0 End Select ' --- O és P oszlop értékek hozzáadása --- If IsNumeric(Cells(i, "O").Value) Then hozzaadErtekO = Cells(i, "O").Value Else hozzaadErtekO = 0 End If If IsNumeric(Cells(i, "P").Value) Then hozzaadErtekP = Cells(i, "P").Value Else hozzaadErtekP = 0 End If ' --- Hozzáadott érték Q oszlop alapján --- Select Case Cells(i, "Q").Value Case 1 hozzaadErtekQ = 50000 Case 2 hozzaadErtekQ = 25000 Case 3, 4 hozzaadErtekQ = 10000 Case Else hozzaadErtekQ = 0 End Select ' --- Hozzáadott érték S oszlop alapján --- If Cells(i, "S").Value = 1 Then hozzaadErtekS = 50000 Else hozzaadErtekS = 0 End If ' --- Összegzés és beírás BD-be --- vegsoErtek = alapErtek + hozzaadErtekG + hozzaadErtekE + hozzaadErtekIJ + _ hozzaadErtekL + hozzaadErtekM + hozzaadErtekN + hozzaadErtekO + _ hozzaadErtekP + hozzaadErtekQ + hozzaadErtekS Cells(i, "BD").Value = vegsoErtek Next i End Sub Sub JovedelemIntervallumok() Dim ws As Worksheet Dim i As Long Dim income As Variant Dim c1 As Long: c1 = 0 '100 000 - 200 000 Dim c2 As Long: c2 = 0 '200 001 - 280 000 Dim c3 As Long: c3 = 0 '280 001 - 350 000 Dim c4 As Long: c4 = 0 '350 001 - 450 000 Dim c5 As Long: c5 = 0 '450 001 - 600 000 Dim c6 As Long: c6 = 0 '600 001+ Set ws = ThisWorkbook.Worksheets("data") ' ha más a munkalap neve, írd át For i = 2 To 501 income = ws.Cells(i, "BF").Value If IsNumeric(income) Then If income >= 100000 And income <= 200000 Then c1 = c1 + 1 ElseIf income >= 200001 And income <= 280000 Then c2 = c2 + 1 ElseIf income >= 280001 And income <= 350000 Then c3 = c3 + 1 ElseIf income >= 350001 And income <= 450000 Then c4 = c4 + 1 ElseIf income >= 450001 And income <= 600000 Then c5 = c5 + 1 ElseIf income > 600000 Then c6 = c6 + 1 End If End If Next i ' Eredmények kiírása – BG oszloptól indul ws.Range("BG505").Value = "100 000 – 200 000" ws.Range("BG506").Value = "200 001 – 280 000" ws.Range("BG507").Value = "280 001 – 350 000" ws.Range("BG508").Value = "350 001 – 450 000" ws.Range("BG509").Value = "450 001 – 600 000" ws.Range("BG510").Value = "> 600 000" ws.Range("BH505").Value = c1 ws.Range("BH506").Value = c2 ws.Range("BH507").Value = c3 ws.Range("BH508").Value = c4 ws.Range("BH509").Value = c5 ws.Range("BH510").Value = c6 End Sub