• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Formülde Değer Hatası

  • Konbuyu başlatan Konbuyu başlatan Pexola
  • Başlangıç tarihi Başlangıç tarihi
Katılım
16 Nisan 2015
Mesajlar
11
Excel Vers. ve Dili
Office 2010, Türkçe
Merhaba,

Elimde şöyle bir tablo var

yMMkRL.jpg


ve ben bu tabloya şu formülü uygulamak istiyorum:

Kod:
=((EĞER(BAĞ_DEĞ_SAY(D3:N3)>1,TOPLA.ÇARPIM((SÜTUN(D3:N3)*(D3:N3<>"")>=BÜYÜK(SÜTUN(D3:N3)*(D3:N3<>""),2))*D3:N3)/2,ORTALAMA(D3:N3)))*2-ARA(2,1/(D3:N3<>""),D3:N3))-ARA(2,1/(D3:N3<>""),D3:N3)

Bu formülün amacı tüm satırdaki değerlere bakıyor ve son değerden sondan bir önceki değeri çıkartarak aradaki farkı hesaplıyor. Yalnız arada 2 tane AN ve AB değerleri olduğu için formül değer hatası veriyor. Bu problemi nasıl aşabilirim acaba?
 
Formülde D3:N3<>"" yerine ESAYIYSA(D3:N3) kullanıp dener misiniz?
 
Denedim ama bu seferde #YOK hatası veriyor
 
Formülü düzeltemedim. Ancak eğer verdiğiniz resme göre son iki dolu ve sayı olan hücrenin farkını istiyorsanız, aşağıdaki kodları bir modüle ekleyip çalıştırdığınızda C3 hücresine son iki dolu ve sayı olan hücrenin farkını yazar:

Kod:
Sub fark()
For i = 14 To 4 Step -1
    If Cells(3, i) <> "" And WorksheetFunction.IsNumber(Cells(3, i)) Then
        a = Cells(3, i).Value
        For j = i - 1 To 4 Step -1
            If Cells(3, j) <> "" And WorksheetFunction.IsNumber(Cells(3, j)) Then
                b = Cells(3, j).Value
                i = 4
                j = 4
            End If
        Next
    End If
Next
[c3] = a - b
End Sub
 
Ya da aşağıdaki kodları doğrudan ilgili sayfanın kod bölümüne yapıştırın. D3:N3 aralığında her değişiklik olduğunda C3 hücresine son iki dolu ve sayı olan hücrenin farkını yazar:

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [D3:N3]) Is Nothing Then Exit Sub
fark1
End Sub
Sub fark1()
For i = 14 To 4 Step -1
    If Cells(3, i) <> "" And WorksheetFunction.IsNumber(Cells(3, i)) Then
        a = Cells(3, i).Value
        For j = i - 1 To 4 Step -1
            If Cells(3, j) <> "" And WorksheetFunction.IsNumber(Cells(3, j)) Then
                b = Cells(3, j).Value
                i = 4
                j = 4
            End If
        Next
    End If
Next
[c3] = a - b
End Sub
 
Geri
Üst