• DİKKAT

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

VBA hücresi ile eklediğim formül otomatik olarak çalışmıyor

Katılım
9 Aralık 2018
Mesajlar
363
Excel Vers. ve Dili
Excel 2019 - 32 bit TR
Merhaba
0 olarak girilen veriler grafikte görünmesin diye =yoksay() formülünü kullanmak istedim.
değerleri userform aracılığı ile hücrelere giriyorum.

formül otomatik olarak devreye girmiyor AD? olarak kalıyor. nasıl otomatik aktifleştiririm?

VQ2odR.jpg


olması gereken
vaYk9D.jpg
 
İşlemi yaptığınız kod bloğunuzu da paylaşırsanız ne yapmak istenildiği daha iyi anlaşılır. Hatta küçük bir örnek dosya üzerinde yapacağınız tarif çözümü hızlandıracaktır.
 
Kod:
Private Sub submit1_Click()
Dim ssheet1 As Worksheet
Set ssheet1 = ThisWorkbook.Sheets("Kanlar")

nr = ssheet1.Cells(Rows.count, 1).End(xlUp).Row + 1

ssheet1.Cells(nr, 1) = CDate(Me.DTpick1)
ssheet1.Cells(nr, 2) = CDec(Me.tbWBC)
ssheet1.Cells(nr, 3) = CDec(Me.tbHB)
ssheet1.Cells(nr, 4) = CDec(Me.tbPLT)
ssheet1.Cells(nr, 5) = CDec(Me.tbUREA)
ssheet1.Cells(nr, 6) = CDec(Me.tbKREA)
ssheet1.Cells(nr, 7) = CDec(Me.tbTBIL)
ssheet1.Cells(nr, 8) = CDec(Me.tbDBIL)
ssheet1.Cells(nr, 9) = CDec(Me.tbINR)
ssheet1.Cells(nr, 10) = CDec(Me.tbKALS)
ssheet1.Cells(nr, 11) = CDec(Me.tbALB)
ssheet1.Cells(nr, 12) = CDec(Me.tbNSE)
ssheet1.Cells(nr, 13) = CDec(Me.tbKROGA)
ssheet1.Cells(nr, 14) = CDec(Me.tbCEA)

For nInputRow = 1 To 14
    If ssheet1.Cells(nr, nInputRow) = 0 Then
        ssheet1.Cells(nr, nInputRow) = "=yoksay()"
    End If
Next nInputRow

Application.ScreenUpdating = True
Worksheets("Kanlar").Select

End Sub

kusura bakmayın, kodu ekledim sanıyordum. hastaların getirmeyi unuttuğu kanlara 0 değerini giriyoruz. bu şekilde yaptığımızda grafikte bozulmalar oluyor. bozulmasın diye =na() formülünü önerdiler. kendim #YOK yazdığımda ya da =yoksay() yazıp çalıştırdığımda sorun olmuyor. VBA bu formülü eklerse çalışmıyor, illa ben tekrar hücrenin içine girmem gerekiyor.
 
Deneyiniz.

Kod:
ssheet1.Cells(nr, nInputRow).FormulaLocal = "=yoksay()"
 
Elinize sağlık. çalıştı. kaç gündür bunu arıyordum.
 
Merhaba ,

Şu şekilde de yapabilirdiniz.
Kod:
ssheet1.Cells(nr, nInputRow).FormulaR1C1 = "=NA()"

Ama sizin örneğiniz Türkçe yazmak üzerine olduğu için Korhan hocam o şekilde örnek vermiş. Her ikisi de aynı işlemi yapar.
 
.Formula da aynı sonucu verecektir.
 
Geri
Üst