• DİKKAT

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

Makroyu sadece belirli sayfalarda calistirma

tristanfermat

Altın Üye
Katılım
12 Haziran 2018
Mesajlar
98
Excel Vers. ve Dili
Excel 365
Merhaba
Asagidaki kodu sayfa1 haric diger sayfalarda calistirmak istiyorum. Herhangi bir sayfaya ekleyip calistirdigimda degerler sayfa1'ede geliyor nasil engelleyebilirim?
Tesekkürler

Kod:
Sub Toplamlar()

    Dim i   As Long, _
        t(3) As Double
        
    For i = 2 To Cells(Rows.Count, "A").End(3).Row
    
        If Cells(i, "C") = Date Then t(0) = t(0) + Cells(i, "B")
        
        If (Year(Cells(i, "C")) = Year(Date)) And _
            Application.WorksheetFunction.WeekNum(Cells(i, "C")) = Application.WorksheetFunction.WeekNum(Date) Then _
            t(1) = t(1) + Cells(i, "B")
        
        If (Year(Cells(i, "C")) = Year(Date)) And _
            Month(Cells(i, "C")) = Month(Date) Then _
            t(2) = t(2) + Cells(i, "B")
        
        If (Year(Cells(i, "C")) = Year(Date)) Then t(3) = t(3) + Cells(i, "B")
        
    Next i
    
    Range("F3").Resize(4, 1) = Application.WorksheetFunction.Transpose(t)
    
   Call calistir
    
End Sub

Sub calistir()
Application.OnTime Now + TimeValue("00:00:03"), "Toplamlar"
End Sub
 
Kodun başlangıç satırına aşağıdaki satırı ekleyebilirsiniz.
Kod:
 if activesheet.name = "Sayfa1" then exit sub
 
Tesekkürler. Söyle bir sorun var ben sayfa1'e gittigim zaman makro kapaniyor ama tekrar diger sayfalara gectigimde calismasi lazim yani tamamen kapanmamasi lazim makronun.
 
Toplamlar makrosunu aşağıdaki sayfa olayına eklerseniz sorun çözülür kanımca. Çalıştır makrosunu neden kullandığınızı anlamadım.
Kod:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
if sh.name = "Sayfa1" then exit sub
 
Makroyu sürekli calisir halde tutmak istiyorum o yüzden kullandim, diger türlü sayfadaki degerler degismiyor sayfa1'den gelen degerler sayfa2'deki A,B,C sütunlarina gidiyor ve sayfa2'de degerler toplamini alip tekrar sayfa1 de D sütununa yazdiriyor yani sayfa2 ya da sayfa3... 'e giden degerler hemen güncellenmeli makro sürekli calismali baska bir yolu var midir?
 
Verdiğim sayfa olayında da sayfa aktif olduğunda kod çalışıp toplamlar güncellenecektir. Yada süreyi arttırarak birde deneme yapın.
Kod:
Application.OnTime Now + TimeValue("00:00:08"), "Toplamlar"
 
Geri
Üst