- Katılım
- 2 Mart 2005
- Mesajlar
- 2,960
- Excel Vers. ve Dili
-
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Selamlar;
L71 hücresinde aşağıdaki gibi bir formülümüz var,
ve bu değer herzaman aynı yerinde olmadığı için dögüden buraya geliyor. sadece değerin gözükmesini istediğim için kopyala, özel yapıştır ile bu kısmı geçiyorum. (kırmızı satırlar)
ancak aşağıdaki şekilde bir yöntem gördüm bunu 3 koşulda gerçekleşiyorsa toplamayı yap komutu şeklinde nasıl düzenlerim. BU şekilde düzenlendiği takdirde kodun daha hızlı çalışacağını, hızlı çalışmasa bile daha işlevsel olacağını düşünüyorum.
'WorksheetFunction.SumIf(s1.[b:b], s1.Cells(a, "b"), s1.[d:d])
Saygılarımla.
L71 hücresinde aşağıdaki gibi bir formülümüz var,
Kod:
=TOPLA(EĞER(B71=A8:A90; EĞER(H71=H8:H90; EĞER("İçi"=N8:N90; J8:J90;0))))
Kod:
For syc_i = 1 To BY_Sayisi
syc_ii = syc_i + mygd_bassat
.Cells(syc_ii, "B").Value = srgYil
.Cells(syc_ii, "C").Value = .Cells(syc_ii, "B").Value & " Mali Yılı İçin"
.Range(.Cells(syc_ii, "C"), .Cells(syc_ii, "G")).MergeCells = True
.Cells(syc_ii, "H").Value = FncHsr_Benzersiz(wsTBL.Range("A2:A" & TablomYillarSonSat), syc_i)
.Cells(syc_ii, "I").Value = "Bütçesinden"
.Range(.Cells(syc_ii, "I"), .Cells(syc_ii, "K")).MergeCells = True
With .Cells(syc_ii, "L")
[COLOR=Red] .FormulaArray = "=SUM(IF(B" & syc_ii & "=A8:A" & SonSat_Rpr & _
", IF(H" & syc_ii & "=H8:H" & SonSat_Rpr & _
", IF(""İçi""=N8:N" & SonSat_Rpr & _
", J8:J" & SonSat_Rpr & ",0))))"
.NumberFormat = "#,##0.00"
'.Copy
'.PasteSpecial Paste:=xlPasteValues: Application.CutCopyMode = False[/COLOR]
End With
mygd_sonsat = mygd_bassat + BY_Sayisi + 1
yuzdeAddr = .Cells(mygd_sonsat, "L").Address(False, False)
bolAddr = .Cells(syc_ii, "L").Address(False, False)
With .Cells(syc_ii, "M")
.Formula = "=100*" & bolAddr & "/" & yuzdeAddr
.NumberFormat = "#,##0.00"
End With
Next syc_i
'WorksheetFunction.SumIf(s1.[b:b], s1.Cells(a, "b"), s1.[d:d])
Saygılarımla.