• DİKKAT

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

tanımlı kodun belirli tarihden sonra değişmesi

Katılım
11 Şubat 2009
Mesajlar
30
Excel Vers. ve Dili
XML
merhaba,

ekteki örneğe formül eklemek istiyorum. yardımcı olabilir misiniz,

durum "aramada" olduğuda ve A4 hücresinde bulunan tarihi 2 gün geçtiğinde AÇIK olarak güncellenmesi

örneğin ekteki örnekte A4 Tarihi :13.09.20.13 sistem tarihi 15.09.2013 olduğunda Durum " Açık olmalıdır.

örneğim ektedir,



desteğiniz için şimdiden teşekkürler
 

Ekli dosyalar

Ben ARAMADA kısmını atlamışım
iyi çalışmalar
 
Son düzenleme:
Aşağıdaki kodu kullanabilirsiniz.

Kod:
Sub DURUM_GUNCELLE()
    Dim Bul As Range, Adres As String
    
    Set Bul = Range("D:D").Find("ARAMADA", , , xlWhole)
    If Not Bul Is Nothing Then
        Adres = Bul.Address
        Do
            If (Date - Bul.Offset(0, -3)) >= 2 Then Bul.Value = "AÇIK"
            If WorksheetFunction.CountIf(Range("D:D"), "ARAMADA") = 0 Then Exit Do
            Set Bul = Range("D:D").FindNext(Bul)
        Loop While Not Bul Is Nothing And Bul.Address <> Adres
    End If
    
    MsgBox "Durum bilgileri güncellenmiştir.", vbInformation
End Sub
 
aşağıdaki bilgi için teşekkürler denedim oldu,
sadece sayfa açıldığında direk güncelleme olmuyor. macro yu çalıştır dediğim zaman çalıştırıyor. bende kısayolu tuşu ekledim ,

sayfa açılırken güncellenmesini nasıl sağlayabilirim?

Aşağıdaki kodu kullanabilirsiniz.

Kod:
Sub DURUM_GUNCELLE()
    Dim Bul As Range, Adres As String
    
    Set Bul = Range("D:D").Find("ARAMADA", , , xlWhole)
    If Not Bul Is Nothing Then
        Adres = Bul.Address
        Do
            If (Date - Bul.Offset(0, -3)) >= 2 Then Bul.Value = "AÇIK"
            If WorksheetFunction.CountIf(Range("D:D"), "ARAMADA") = 0 Then Exit Do
            Set Bul = Range("D:D").FindNext(Bul)
        Loop While Not Bul Is Nothing And Bul.Address <> Adres
    End If
    
    MsgBox "Durum bilgileri güncellenmiştir.", vbInformation
End Sub
 
Merhaba,

Sayfa ismi üzerinde sağ klik yapın.
Açılan menüden KOD GÖRÜNTÜLE seçeneğini seçin.
Açılan beyaz pencereye aşağıdaki kodu uygulayın.

Başka bir sayfayı açıp tekrar bu işlemi yaptığınız sayfaya tıklayıp deneyin.

Kod:
Private Sub Worksheet_Activate()
    Dim Bul As Range, Adres As String
    
    Set Bul = Range("D:D").Find("ARAMADA", , , xlWhole)
    If Not Bul Is Nothing Then
        Adres = Bul.Address
        Do
            If (Date - Bul.Offset(0, -3)) >= 2 Then Bul.Value = "AÇIK"
            If WorksheetFunction.CountIf(Range("D:D"), "ARAMADA") = 0 Then Exit Do
            Set Bul = Range("D:D").FindNext(Bul)
        Loop While Not Bul Is Nothing And Bul.Address <> Adres
    End If
    
    MsgBox "Durum bilgileri güncellenmiştir.", vbInformation
End Sub
 
Merhaba,

Sayfa ismi üzerinde sağ klik yapın.
Açılan menüden KOD GÖRÜNTÜLE seçeneğini seçin.
Açılan beyaz pencereye aşağıdaki kodu uygulayın.

Başka bir sayfayı açıp tekrar bu işlemi yaptığınız sayfaya tıklayıp deneyin.

Kod:
Private Sub Worksheet_Activate()
    Dim Bul As Range, Adres As String
    
    Set Bul = Range("D:D").Find("ARAMADA", , , xlWhole)
    If Not Bul Is Nothing Then
        Adres = Bul.Address
        Do
            If (Date - Bul.Offset(0, -3)) >= 2 Then Bul.Value = "AÇIK"
            If WorksheetFunction.CountIf(Range("D:D"), "ARAMADA") = 0 Then Exit Do
            Set Bul = Range("D:D").FindNext(Bul)
        Loop While Not Bul Is Nothing And Bul.Address <> Adres
    End If
    
    MsgBox "Durum bilgileri güncellenmiştir.", vbInformation
End Sub


Teşekkürler
 
Merhaba,

Sayfa ismi üzerinde sağ klik yapın.
Açılan menüden KOD GÖRÜNTÜLE seçeneğini seçin.
Açılan beyaz pencereye aşağıdaki kodu uygulayın.

Başka bir sayfayı açıp tekrar bu işlemi yaptığınız sayfaya tıklayıp deneyin.

Kod:
Private Sub Worksheet_Activate()
    Dim Bul As Range, Adres As String
    
    Set Bul = Range("D:D").Find("ARAMADA", , , xlWhole)
    If Not Bul Is Nothing Then
        Adres = Bul.Address
        Do
            If (Date - Bul.Offset(0, -3)) >= 2 Then Bul.Value = "AÇIK"
            If WorksheetFunction.CountIf(Range("D:D"), "ARAMADA") = 0 Then Exit Do
            Set Bul = Range("D:D").FindNext(Bul)
        Loop While Not Bul Is Nothing And Bul.Address <> Adres
    End If
    
    MsgBox "Durum bilgileri güncellenmiştir.", vbInformation
End Sub




" D" hücresindeki bilgilerİ " I "hücresine taşıdım ve "D" yi "I" olarak güncelledim ama run time error 1004 hatası veriyor

yardımcı olabilir misiniz
 
Sadece "I" sütununu güncellemeniz yeterli olmaz. Yaptığınız değişiklik kodu revize etmenize sebep olabilir. Bu sebeple sorularınızı sorarken net bilgiler veriniz.

Kod içinde geçen tarih sütun bilgisinide güncellemeniz gerekiyor.

Kod:
Bul.Offset(0, -3)

-3 değerini -8 yapıp deneyin.
 
Geri
Üst