• DİKKAT

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

Tabloda Değişiklik Olduğunda Tarih Atsın

Katılım
8 Ocak 2021
Mesajlar
23
Excel Vers. ve Dili
Office 2016 / TR
Merhaba,
Bir dashboard excelim var. Bu excel için verilerimi tablo şeklinde otomatik olarak sharepoint'ten edinebiliyorum. Bunun için yapmam gereken şey veri sekmesinden tümünü yenile'ye tıklamak oluyor. Ancak ben bu dashboard sayfamda bir alanda tümünü yenile'ye tıklanan tarihin tıklanınca otomatik olarak yazmasını istiyorum ki böylece dashboard'daki verilerin en son ne zaman güncellendiğini görebileyim. Bunun için makro üzerinden kodla yapılabileceğini anlıyorum ancak bunu yapabilecek kod bilgim yok. Şimdiden yardımınız için teşekkür ederim.
Sürüm: excel 2016 Dil: Türkçe
 
Merhaba,

Sayfanıza bir buton ekledikten sonra aşağıdaki kodu tanımlayınız. Sonrasında butona tıkladığınızda Z1 hücresine güncelleme zamanı yazılacaktır. Adresi kendi dosyanıza göre revize edebilirsiniz.

C++:
Option Explicit

Sub Refresh_All()
    ActiveWorkbook.RefreshAll
    Range("Z1") = Now
    Range("Z1").EntireColumn.AutoFit
End Sub
 
Alternatif olsun.

Worksheet_Change içine yazılabilir ama tercih etmem. Sizde veri değişeceği ve hesaplama yapacağı için Calculate eventine yazmak daha excel için daha az yorucu gibi. Herhangi bir hesaplama olduğunda otomatik tarih atar.

Kod:
Private Sub Worksheet_Calculate()
Range("A1").Value = Now()
End Sub
 
Merhaba;

Çok yanlış anlamış olabilirim ama bir hücreye "=ŞİMDİ()" ya da "=Now()" yazılırsa "yenile" düğmesi ya da yapılan herhangi bir değişiklikte bu hücredeki zaman da değişiyor zaten. Ben mi anlamadım? ;)

Ekleme: Tabii bu da çok fazla hesaplama, formül vs varsa performans kaybına yol açar sanırım ;)
 
Son düzenleme:
Calculate esnasında bir hücreye bir değer yazmasımı performans kaybına yol açar ?
Sizce ne kadarlık performans kaybı?
 
Calculate esnasında bir hücreye bir değer yazmasımı performans kaybına yol açar ?
Sizce ne kadarlık performans kaybı?

Ben kendi cevabıma istinaden "performans kaybı olabilir" dedim. Doğrudan hücreye yazılan bu tür "volatile" fonksyonlara(=now, =today...) ait formüller her yenileme , hesaplamada güncellenmiyor mu?
 
Merhaba,

Sayfanıza bir buton ekledikten sonra aşağıdaki kodu tanımlayınız. Sonrasında butona tıkladığınızda Z1 hücresine güncelleme zamanı yazılacaktır. Adresi kendi dosyanıza göre revize edebilirsiniz.

C++:
Option Explicit

Sub Refresh_All()
    ActiveWorkbook.RefreshAll
    Range("Z1") = Now
    Range("Z1").EntireColumn.AutoFit
End Sub

Hocam teşekkür ederim bu kodla dediğiniz tarihi atıyor. Peki şunu rica etsem ben bir şekil ekleyip makro atamasıyla otomatik yenileme işlemini bu şekile yaptırıyorum.
Merhaba,

Sayfanıza bir buton ekledikten sonra aşağıdaki kodu tanımlayınız. Sonrasında butona tıkladığınızda Z1 hücresine güncelleme zamanı yazılacaktır. Adresi kendi dosyanıza göre revize edebilirsiniz.

C++:
Option Explicit

Sub Refresh_All()
    ActiveWorkbook.RefreshAll
    Range("Z1") = Now
    Range("Z1").EntireColumn.AutoFit
End Sub

Hocam teşekkür ederim. Kodu çalıştırdığımda çalıştı ama aslında istediğim şuydu. Şimdi bu excelde dashboard sayfasında bir şekil var. Bu şekle makro yaparak otomatik yenile yaptırıyorum. Ben istiyorum ki bu şekle tıklandığında makro ile otomatik yenileme yapsın ve z1 hücresine de bu makroyu yaptıktan sonra bu şekle ne zaman tıklandığının tarihini yazsın. Bunu yapmak mümkün müdür?
 
Şekle tıkladığınızda makro ata diye bir seçenek görüyormusunuz?
Korhan Bey'in hazırladığı makroyu gösterin.
 
Geri
Üst