• DİKKAT

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

çalışma sayfası açıldığında uyarı mesajı verme

Katılım
9 Haziran 2013
Mesajlar
66
Excel Vers. ve Dili
2010
Arkadaşlar ben excelde cari kayıtları tutuyorum bir sayfadada çek senet ve alacaklar sayfam var. benim istediğim excel sayfamı açdığımda bana ufak bir ekranda bügün şu çek ve senetlerinin tahsili var diye bir uyarı mesajı vermesi yardımlarınız için teşekkür ederim
 
Merhaba.

Belgeniz açıkken ALT+F11 tuşlarına basın, açılan VBA ekranında üst taraftaki menü kısmında
INSERT -> MODULE'yi seçin, sağ taraftaki boş alana aşağıdaki kod'u yapıştırın ve
belgeyi makro içeren belge olarak kaydederek kapatın.

Bundan sonraki ilk açılışta makroarı etkinleştiri seçip, belgeyi kaydederek tekrar kapatıp açın.
.
Kod:
Sub auto_open()
    MsgBox "Bugün şu çek ve senetlerinin tahsili var..."
End Sub
 
Belge nedir, sayfa hangi sayfadır, vadeler nerede vs.?
Örnek belge olmadan nasıl bir çözüm önerisi bekliyorsunuz anlayamadım.
 
özet bir tablo koydum ekte bu sayfayı açtığımda sayfadaki çek senet tablosundaki o güne denk gelen çek ve senetleri göstermesi
 

Ekli dosyalar

Aşağıdaki kod'u bir MODUL'e yapıştırın ve belgeyi önceki cevabımda belirttiğim şekide kaydedin.
.
Kod:
[FONT="Arial Narrow"][B]Sub auto_open()[/B]
Set cs = Sheets("ÇEK SENET"): Set WF = Application.WorksheetFunction
    For satır = 5 To cs.[B65536].End(3).Row
        If WF.CountIf(cs.Range("B:B"), Date) = 0 Then
            MsgBox "BUGÜN: " & Date & vbLf & "BUGÜN ÖDEME YOK.": Exit Sub: End If
               [COLOR="Blue"] If cs.Cells(satır, 2) = Date Then[/COLOR]
                    sayı = sayı + 1: adet = WF.CountIf(cs.Range("B:B"), Date) - sayı + 1
                    [COLOR="blue"]brn[/COLOR] = [COLOR="Red"]adet & ") " & Format(cs.Cells(satır, 4), "#,##0.00") & " - " & _
                cs.Cells(satır, 3) & " - " & cs.Cells(satır, 5) & vbLf &[/COLOR] [COLOR="Blue"]brn[/COLOR]
            End If: Next
        MsgBox "BUGÜN: " & Date & vbLf & "TOPLAM ÖDEME :  " & _
    Format(WF.SumIf(cs.Range("B:B"), Date, cs.Range("D:D")), "#,##0.00") & vbLf & _
vbLf & brn, vbInformation, ".:. BUGÜNKÜ ÇEK - SENET ÖDEMELERİ .:."
[B]End Sub[/B][/FONT]
 
Son düzenleme:
Ömer Bey, size zahmet kodları açıklar mısınız? Listeleme işini nasıl yapıyor?
 
Merhaba YUSUF Bey.

Kod'da renklendirme yaptım.

Mavi If satırındaki koşul gerçekleştiğinde;
kırmızı kısımla listenin bir satırı oluşuyor (vbLf ile satır başı karakteri de var tabi),
ardından koşula uyan yeni satıra gelindiğinde oluşturulan satır ile yeni satırdaki aynı bilgiler birleştiriliyor.

Aslında oluşan şey bir liste değil, uzun tek bir metin,
satırbaşı karakteri (brn= satırındaki sonda yer alan vbLf kısmı) eklenerek bu metin liste gibi görüntüleniyor.
Buradaki vbLf'yi kaldırıp yerine "BOŞLUK" eklenirse uzun tek bir metin olduğu anlaşılır.

Numaralandırma için daha doğru bir yöntem bulunurdu ancak yaparken öyle düşünmüşüm işte.
Numaralandırma işine For-Next döngüsünü sondan başa çevirip kolaylaştırmak daha iyi olurdu ama neyse.

Bu şekilde de sonuç alınıyor neticede.
.
 
Merhaba Ömer Bey, Benim dosyamda sözleşme tarihi yakalaşanlar için yaptıgım bir formul var. 30 ile 90 gun arası zaman dılımde olan sozlesmeler için excelher açıldıgında hatırlatma msjı versın ıstıyorum. Bunu nasıl yapablırım?
 
Geri
Üst