makroda formül kullanma

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,471
Excel Vers. ve Dili
2021 LTSC TR
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Satır As Long, Formül As String
.
.
.
.
.
Formül = "=IF(L6<=10,K6+(L6*O6*P6*Q6),K6+(10*O6*P6*Q6)+((L6-10)*O6*P6*Q6*0.5))"
Yol = "=IF(E6="","",(I6=Asf)*1+(I6=Stb)*1.1+(I6=Topr)*1.2+(I6=Asf,Kar,Zinc)*1.05+(I6=Stab,Kar,Zinc)*1.15+(I6=Topr,Kar,Zinc)*1.25+(I6=Asf,Dağ,Eğiml)*1.05+(I6=Stab,Dağ,Eğiml)*1.15+(I6=Topr,Dağ,Eğiml)*1.25+(I6=Asf,Dağ,Eğiml,Kar,Zinc)*1.1+(I6=Stab,Dağ,Eğiml,Kar,Zinc)*1.2+(I6=Topr,Dağ,Eğiml,Kar,Zinc)*1.3))"
.
.
.
Formül = Replace(Formül, 6, Satır)
Yol = Replace(Yol, 6, Satır)
.
.
Cells(Satır, "S") = Evaluate(Formül)
Cells(Satır, "O") = Evaluate(Yol)


Ustalarıma sorum şu olacak


Formül kullanmak istesem
Kaç tane formül kullanabilirim?
Her formüle ad nasıl verebilirim?

Teşekkür ederim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,325
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Kullandığınız formüllerinizde bir ritim varsa döngü kurarak kısa bir yapı ile formüllerinizi makroya çevirebilirsiniz.
 

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,471
Excel Vers. ve Dili
2021 LTSC TR
Korhan abi
Yukarıda ki kod için yine siz yardımcı olmuştunuz?
Yeni bir ekleme yapma ihtiyacı doğdu.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Satır As Long, Formül As String
    On Error GoTo Son
    If Intersect(Target, Range("K6:Q" & Rows.Count)) Is Nothing Then Exit Sub
    Satır = Target.Row
    Formül = "=IF(L6<=10,K6+(L6*O6*P6*Q6),K6+(10*O6*P6*Q6)+((L6-10)*O6*P6*Q6*0.5))"
    Formül = Replace(Formül, 6, Satır)
    Application.EnableEvents = False
    Cells(Satır, "S") = Evaluate(Formül)
    Cells(Satır, "T") = Cells(Satır, "R") * Cells(Satır, "S")
Son:
    Application.EnableEvents = True
End Sub
Esas kod yukarıda arz ettiğim kod
Bu kodun içerisine

"=IF(E6="","",(I6=Asf)*1+(I6=Stb)*1.1+(I6=Topr)*1.2+(I6=Asf,Kar,Zinc)*1.05+(I6=Stab,Kar,Zinc)*1.15+(I6=Topr,Kar,Zinc)*1.25+(I6=Asf,Dağ,Eğiml)*1.05+(I6=Stab,Dağ,Eğiml)*1.15+(I6=Topr,Dağ,Eğiml)*1.25+(I6=Asf,Dağ,Eğiml,Kar,Zinc)*1.1+(I6=Stab,Dağ,Eğiml,Kar,Zinc)*1.2+(I6=Topr,Dağ,Eğiml,Kar,Zinc)*1.3))"
şeklindeki formülü eklemek istiyorum.

Yardımcı olabilir misiniz?
 
Üst