visual basicde excel formülleri

Katılım
29 Aralık 2006
Mesajlar
80
Excel Vers. ve Dili
visualbasic
Sayın arkadaşlar visual basicde toplama,çıkarma,çarpma ve bölmeyle ilgili formülleri yapıyorum. ÖR: Private Sub CommandButton11_Click()
TextBox20.Value = Val(TextBox7.Value) + Val(TextBox11.Value) + Val(TextBox12.Value)
TextBox21.Value = Val(TextBox15.Value) + (Val(TextBox6.Value) / 2)
TextBox22.Value = Val(TextBox7.Value) * Val(TextBox21.Value) * Val(TextBox19.Value)
TextBox23.Value = (Val(TextBox21.Value) + 4) * Val(TextBox11.Value) * Val(TextBox19.Value)
TextBox24.Value = Val(TextBox21.Value) * Val(TextBox12.Value) + Val(TextBox21.Value) * Val(TextBox12.Value) * 0.5 * Val(TextBox19.Value)
TextBox25.Value = Val(TextBox22.Value) + Val(TextBox23.Value) + Val(TextBox24.Value)
TextBox26.Value = Val(TextBox5.Value) * Val(TextBox18.Value)
TextBox27.Value = Val(TextBox26.Value) + Val(TextBox25.Value)
TextBox28.Value = Val(TextBox25.Value) / Val(TextBox20.Value)

End Sub
-------
Fakat =MAK((C2:C15000=F75)*(B2:B15000))
=MİN(EĞER(((C2:C15000=F74)*(B2:B15000))>0;B2:B15000))
=EĞERSAY(C:C;"19.01.2007")
=ETOPLA(C:C;"14.01.2007";D:D)
bu tarz formülleri visual basice nasıl aktaracağım.Çünkü programın MB. tı çok eğer bu formülleri vba ya aktarabilirsem neredeyse KB. durumuna düşecek.
Lütfen Yardım........
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Aşağıdaki şekilde kullanabilirsiniz.

Kod:
WorksheetFunction.Max 'MAK
WorksheetFunction.Min 'MİN
WorksheetFunction.CountIf 'EĞERSAY
WorksheetFunction.SumIf 'ETOPLA
 
Katılım
29 Aralık 2006
Mesajlar
80
Excel Vers. ve Dili
visualbasic
İlginize teşekkürler .Sayın Hamitcan
Kod:
WorksheetFunction.Max 'MAK
WorksheetFunction.Min 'MİN
WorksheetFunction.CountIf 'EĞERSAY
WorksheetFunction.SumIf 'ETOPLA
bu kodların yanına bunları =MAK((C2:C15000=F75)*(B2:B15000))
=MİN(EĞER(((C2:C15000=F74)*(B2:B15000))>0;B2:B1500 0))
=EĞERSAY(C:C;"19.01.2007")
aynen yazıyoruz doğrumu?
Bir de Bu kodları istediğimiz bir sayfada çalışması için nasıl düzenleyeceğim
 
Son düzenleme:

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Aşağıdaki şekilde dener misiniz ?

Kod:
[c1] = Evaluate("=COUNTIF(c:c,""" & Format("19/01/2007", "00000") & """)")
[d1] = Evaluate("=sumIF(c:c,""" & Format("19/01/2007", "00000") & """,d:d)")
[e1] = Evaluate("=Max(if(c2:c15000 = " & "f75" & ", b2:b15000 ))")
[f1] = Evaluate("=Min(if(c2:c15000 = " & "f74" & ", if(b2:b15000 > " & 0 & ", b2:b15000 )))")
 
Katılım
29 Aralık 2006
Mesajlar
80
Excel Vers. ve Dili
visualbasic
ilginize ve emeğinize teşekkürlür

Yardımlarınız çok işime yaradı.Emeğinize sağlık
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Formülçevir

Sub formulcevir()
On Error GoTo hata
MsgBox Application.ConvertFormula( _
Formula:=ActiveCell.Formula, _
fromReferenceStyle:=xlR1C1, _
toReferenceStyle:=xlA1), vbInformation, "Normal Başvuru"
z = Application.ConvertFormula( _
Formula:=ActiveCell.Formula, _
fromReferenceStyle:=xlA1, _
toReferenceStyle:=xlR1C1)
MsgBox z, vbInformation, "R1C1 Stili"
data.SetText z
data.PutInClipboard
Exit Sub
hata:
End Sub

excele yazdığınız
=MAK((C2:C15000=F75)*(B2:B15000))
=MİN(EĞER(((C2:C15000=F74)*(B2:B15000))>0;B2:B15 00 0))
=EĞERSAY(C:C;"19.01.2007")
şeklindeki formülün bulunduğu hücreye gelin, ve yukarıdaki kodu çalıştırdığınızda vba kodlarına dönüştürebilirsiniz. (Not Kodlar yine bu siteden evvelce temin ettiğim kodlardır.)
 
Üst