I am trying to calculate from range M13:M22
using some conditional values and looping, but some of my code just works only in cell M13
and doesn't loop to cell M22
. How do I solve this problem?
Here is my code:
Private Sub CommandButton1_Click()
Dim pelanggan As Range, alamat As Range, diskon As Range, jdiskon As Range, tanggal As Range, jtempo As Range
Dim rout(1 To 10) As Variant, i As Long
Dim path As String
path = "\\Faizal\Data D Faizal\Daftar Harga\Price List"
Filename = Dir(path & "database.xlsx")
Set pelanggan = Range("E7")
Set alamat = Range("E8")
Set diskon = Range("L25")
Set tanggal = Range("L7")
Set jdiskon = Range("P13")
Set jtempo = Range("K30")
getalamat = Application.WorksheetFunction.VLookup(pelanggan & Range("J7"), Workbooks("database.xlsx").Worksheets("DB").Range("A6:N1350"), 14, False)
getdiskon = Application.WorksheetFunction.VLookup(pelanggan & Range("J7"), Workbooks("database.xlsx").Worksheets("DB").Range("A6:N1350"), 6, False)
getjdiskon = Application.WorksheetFunction.VLookup(pelanggan & Range("J7"), Workbooks("database.xlsx").Worksheets("DB").Range("A6:N1350"), 11, False)
getjtempo = Application.WorksheetFunction.VLookup(pelanggan & Range("J7"), Workbooks("database.xlsx").Worksheets("DB").Range("A6:N1350"), 13, False)
alamat.Value = getalamat
diskon.Value = getdiskon / 100
jdiskon.Value = getjdiskon
tanggal.Value = DateValue(Now)
jtempo.Value = getjtempo
'here is the calculation that won't go loop
For i = 13 To 22
getharga = Application.WorksheetFunction.VLookup(Range("D" & i) & Range("E" & i), Workbooks("database.xlsx").Worksheets("Gold").Range("E4:H80"), 4, False)
If jdiskon = "Nett" Then
Range("M" & i).Value = getharga - (getharga * diskon)
Range("L25").ClearContents
ElseIf jdiskon = "Pot" Then
Range("M" & i).Value = getharga
Range("L25").Value = diskon
ElseIf jdiskon = "Diskon Kitir" Then
Range("M" & i).Value = getharga
Range("L25").ClearContents
End If
Next
End Sub