Kullanıcı tanımlı Fonksiyonun otomatik güncellenmesi

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,039
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba,
Aşağıdaki kullanıcı tanımlı fonksiyonda;

ActiveSheet.Cells(1, "N") hücresinde bir değişiklik yapıldığında;
fonksiyonun güncellemesi otomatik yapılmıyor.
sonucun güncellenebilmesi için hücre içerisine girip fonksiyonu yeniden çalıştırmak gerekiyor.

değer değişikliğinin fonksiyon tarafından yakalanabilmesi, değişiklikler Excel tarafından izlenir bir hale nasıl getirilebilir?

Kod:
Public Function Funct395(ara As String) As Double
Dim Shd As Worksheet
Dim i As Long
Dim Son As Long
Dim deger As Double
Dim toplam As Double
Dim dt


Set Shd = Sheets("Data")

Son = Shd.Range("A65536").End(3).Row

dt = ActiveSheet.Cells(1, "N").Value


toplam = 0

    For i = 3 To Son
        
            If Shd.Cells(i, "A") = ara And Shd.Cells(i, "B").Value > dt Then
                
              deger = 395 - Shd.Cells(i, "J").Value
              
                If deger > 0 Then deger = 0
              
                toplam = toplam + deger
                 
            End If
       
       
        Next i

Funct395 = toplam

Set Shd = Nothing

End Function
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,160
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Dim ile başlayan satırların altına aşağıdaki satırı ekleyiniz.

Application.Volatile True
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,039
Excel Vers. ve Dili
Office 2013 İngilizce
Dim ile başlayan satırların altına aşağıdaki satırı ekleyiniz.

Application.Volatile True
Korhan Hocam bu sefer "Data" sayfasında değişiklik olduğunda fonkisyonun bulunduğu hücrede #DEĞER yazıyor. hücre içine girip enter yapınca düzeltiyor.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,160
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu satırdaki değişken veriyi nerden almalı?

dt = ActiveSheet.Cells(1, "N").Value
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,160
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Örnek dosyaniz varsa paylaşın inceleyelim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,160
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aynı sorunu yaşatan basit bir örnek dosya hazırlayıp paylaşabilirsiniz.
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,039
Excel Vers. ve Dili
Office 2013 İngilizce
Aynı sorunu yaşatan basit bir örnek dosya hazırlayıp paylaşabilirsiniz.
Örnek dosya ekte Korhan Hocam

Performans sayfası "D" sütununda; Funct395 kullanıcı tanımlı fonksiyonu kullanırken sorun yaşamaktayım
Data sayfasında yapılan bir değişiklikte bu fonkisyon #Değer sonucunu döndürüyor.
teşekkürler,

iyi çalışmalar.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,160
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu durumun sebebi şu;

Siz "Data" sayfasında değişiklik yaptığınızda fonksiyon otomatik hesaplamaya geçiyor. Fonksiyon içindeki #4 nolu mesajımda sorduğum değişken de aktif sayfadaki N2 hücresindeki veriyi alarak işlem yapmaya çalışıyor. Bu sırada aktif sayfanızda "Data" olduğu için ve bu sayfanın N2 hücresinde "Meeting" yazdığı için sorun oluşuyor.

İlgili değişken satırını aşağıdaki gibi düzenlerseniz sorun ortadan kalkacaktır.

dt = Sheets("Performans").Cells(2, "N").Value
 
Üst