Sayfa Güncellendimi Nasıl Bilirim

kykbt

Altın Üye
Katılım
12 Nisan 2006
Mesajlar
284
Excel Vers. ve Dili
Office 2003
Office 2007
Altın Üyelik Bitiş Tarihi
29-05-2025
Arkadaşlar Merhaba..
Bir excell kitabında açılışta sorulan bağlantıları güncelleştir veya güncelleştirme seçildikten sonra bu kitapta güncelleştirme yapılıp yapılmadığını nasıl bir kod ile öğrenebilirim?
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
605
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Altın Üyelik Bitiş Tarihi
05-04-2025
Bağlantılı hücrelerin tümü birden güncelleniyorsa yada sürekli güncellenenen bir tane bile veriniz varsa,
aşağıdaki gibi basit bir çözüm işinize yarar sanırım.
Ama güncelleme işlemleri topluca olmuyorsa; örneğin bir seferinde sadece A1,A2 vb hücreleri,
diğerinde sadece D2 hücresi vb. Bu çözüm işe yaramaz.
Çünkü aşağıdaki kodlar ile tek hücre ile takip ediliyor.

Kodları BuÇalışmakitabı (ThisWorkbook) kod alanına kopyalarsınız.

Workbook_BeforeSave ile her kayıt yaptığınızda, bağlantılı olan hücredeki( A1) veriyi,
sonradan kontrol edilmek üzere D1 hücresine kopyalıyor.
(Farklı bir sayfaya gizlediğiniz bir hücreye göre ayarlama yaparsınız.)
Bu kodu kitap kapanırken olayına da ekleyebilirdik.
Ama o zaman da her kapanışta değişiklik yapıldı kaydetmek istermisiniz diye soracaktı.

Workbook_Open deki kodlar da; dosya açıldıktan sonra bağlantılı hücre ile,
bir önceki kaydededilmiş hücreyi karşılaştırıp duruma göre bilgi veriyor.
Bu kodları oradan alıp module ekleyip bir butona vb. atayıp sonradan da kontrol sağlayabilirsiniz.
(Tabi kayıt işlemi yapmadan önce kontrol yapmanız gerekir. Yoksa durum değişir.)

C++:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

Range("D1") = Range("A1")

End Sub

'-------------------------------------

Private Sub Workbook_Open()

If Range("A1") = Range("D1") Then
 
  MsgBox ("Güncelleme Yok")
 
  Else: MsgBox ("Güncelleme Var.")

End If

End Sub
 

kykbt

Altın Üye
Katılım
12 Nisan 2006
Mesajlar
284
Excel Vers. ve Dili
Office 2003
Office 2007
Altın Üyelik Bitiş Tarihi
29-05-2025
Bağlantılı hücrelerin tümü birden güncelleniyorsa yada sürekli güncellenenen bir tane bile veriniz varsa,
aşağıdaki gibi basit bir çözüm işinize yarar sanırım.
Ama güncelleme işlemleri topluca olmuyorsa; örneğin bir seferinde sadece A1,A2 vb hücreleri,
diğerinde sadece D2 hücresi vb. Bu çözüm işe yaramaz.
Çünkü aşağıdaki kodlar ile tek hücre ile takip ediliyor.

Kodları BuÇalışmakitabı (ThisWorkbook) kod alanına kopyalarsınız.

Workbook_BeforeSave ile her kayıt yaptığınızda, bağlantılı olan hücredeki( A1) veriyi,
sonradan kontrol edilmek üzere D1 hücresine kopyalıyor.
(Farklı bir sayfaya gizlediğiniz bir hücreye göre ayarlama yaparsınız.)
Bu kodu kitap kapanırken olayına da ekleyebilirdik.
Ama o zaman da her kapanışta değişiklik yapıldı kaydetmek istermisiniz diye soracaktı.

Workbook_Open deki kodlar da; dosya açıldıktan sonra bağlantılı hücre ile,
bir önceki kaydededilmiş hücreyi karşılaştırıp duruma göre bilgi veriyor.
Bu kodları oradan alıp module ekleyip bir butona vb. atayıp sonradan da kontrol sağlayabilirsiniz.
(Tabi kayıt işlemi yapmadan önce kontrol yapmanız gerekir. Yoksa durum değişir.)

C++:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

Range("D1") = Range("A1")

End Sub

'-------------------------------------

Private Sub Workbook_Open()

If Range("A1") = Range("D1") Then

  MsgBox ("Güncelleme Yok")

  Else: MsgBox ("Güncelleme Var.")

End If

End Sub
Arkadaşım Merhaba..
İlgin için teşekkür ediyorum. Ancak benim istediğim, Güncelleştir sorusuna verdiğimiz cevabı kod ile alabilmek.
Çünkü rakamsal bir değişiklik takip mümkün değil binlerce hücre var ve olmuyor. Ayrıca farklı bir değişkende Renk kontrolu yapan Fonksiyon lar var.
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
605
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Altın Üyelik Bitiş Tarihi
05-04-2025
Rica ederim.
Beni aşar da, belki üstadlar api vb. ile sorgulayacak bir kod yazabilirler.
 
Üst