• DİKKAT

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

Açılışta tarih

Katılım
20 Eylül 2006
Mesajlar
27
Excel Vers. ve Dili
excel2002-Türkçe
Merhaba,
Forumun yeni hali hayırlı olsun.

Hazırladığım çalışmam için "expired date" özelliği koymak istiyorum. Yani makro kodu içerisine bir tarih yerleştirilecek, program açıldığında ilk o makro devreye girecek, oraya yerleştirilen tarih geçmiş ise "programın kullanım süresinin dolduğu" şeklinde uyarı vererek programı (yani exceli) kapatacak. Eğer belirttiğim tarih henüz gememişse (programın kullanım süresi dolmamışsa) program çalışacak. Bunu sağlamak mümkün mü, eğer mümkünse nasıl bir makro kodu kullanılmalı. Örnek dosya ekleryebilirseniz sevinirim.

Şimdiden teşekkürler
 
Kod:
Sub Auto_Open()
If Date > CDate("01/01/2009") Then
MsgBox "Kullanım süreniz dolmuştur."
Application.Quit
ThisWorkbook.Close False
End If
End Sub

Günün tarihi makroda belirtilen süreyi geçmişse, Uyarı verir ve program kapanır.
 
açılışta tarih

İlginize teşekkür ederim. Yalnız ben verdiğiniz kodları kullandım bir sonuç alamadım. Mümkünse örnek dosya olarak oluşturabilirseniz sevinirim.
 
Soruyu soralı günler olmuş, unutmuş gitmiştim. Ekli dosyayı inceleyiniz. Açtığınızda karşınıza bir mesaj çıkacaktır. Tamama bastığınızda veya iptal ettiğinizde dosya kapanacaktır. Eğer dosyanın açılmasını istiyorsanız. Verdiğim tarihi artırabilirsiniz.
 

Ekli dosyalar

[Açtığınızda karşınıza bir mesaj çıkacaktır. Tamama bastığınızda veya iptal ettiğinizde dosya kapanacaktır. Eğer dosyanın açılmasını istiyorsanız. Verdiğim tarihi artırabilirsiniz.[/QUOTE]

İyi günler,
Dosyayı açmak için mutlaka tamam veya iptalden birine basmamız gerekiyor,İptalde dosya kapanıyor,Tamam tercihinde ise günün tarihinden önce olduğu için dosya yine kapanıyor. Tarihi değiştirmek için Vba ya ulaşmak
lazım.vba ya ulaşamıyorum. çözüm için ne yapmam gerekiyor? Teşekkürler.
 
Selamlar...
Eğer kodu benim eklediğim dosyada değiştirmek istiyorsanız, makro güvenlik seviyesini yüksek olarak ayarlayıp, koda ulaşabilir, istediğiniz değişikliği yaptıktan sonra, güvenlik seviyesini yeniden düşüğe getirebilirsiniz.
 
ctrl+Break tuş kombozisyonunu deneyin.:cool:
 
İyi günler,
İki çözümde sonuç verdi.Sonsuz teşekkürler
 
İyi günler,
İki çözümde sonuç verdi.Sonsuz teşekkürler
Bir uyarıda bulunmak istiyorum: Evren Bey'in yöntemini deneyince verdiğim kodların diziminde bir değişiklik yapmam gerektiğini farkettim. Evren Bey'in yöntemiyle makro etkinken kodlara ulaşılabiliyor. farkettim. Kodu bu şekilde değiştiriniz.
Kod:
Sub Auto_Open()
If Date > CDate("01/01/2009") Then
Application.Quit
MsgBox "Kullanım süreniz dolmuştur."
ThisWorkbook.Close False
End If
End Sub
Sonuçta amacımız, tarih geçtiğinde dosyanın açılamaması. Makro kodlarını da ayrıca şifrelemek gerekiyor.
Bunu yapınca kodlara yalnızca siz ulaşabilirsiniz.
 
çok teşekkürler, şimdi oldu, ben kodu düzgün yerleştirememişim demekki. İyi çalışmalar. Kolay gelsin.
 
Bir uyarıda bulunmak istiyorum: Evren Bey'in yöntemini deneyince verdiğim kodların diziminde bir değişiklik yapmam gerektiğini farkettim. Evren Bey'in yöntemiyle makro etkinken kodlara ulaşılabiliyor. farkettim. Kodu bu şekilde değiştiriniz.
Kod:
Sub Auto_Open()
If Date > CDate("01/01/2009") Then
Application.Quit
MsgBox "Kullanım süreniz dolmuştur."
ThisWorkbook.Close False
End If
End Sub
Sonuçta amacımız, tarih geçtiğinde dosyanın açılamaması. Makro kodlarını da ayrıca şifrelemek gerekiyor.
Bunu yapınca kodlara yalnızca siz ulaşabilirsiniz.



Peki süre dolduktan sonra kapanıyorya, sonra biz nasıl visual basic editore geçebiliriz? önce boş bir excel açığ makro güvenlik seviyelerini yüksek yaparak mı?
 
Peki süre dolduktan sonra kapanıyorya, sonra biz nasıl visual basic editore geçebiliriz? önce boş bir excel açığ makro güvenlik seviyelerini yüksek yaparak mı?
Evet, en güzel ve kolay yol bu diye düşünüyorum.
 
ya da sistem tarihini geri çekerek :)
Syn. gncy82,
Evet aynen öyle. Ne demek istediğinizi çok iyi anlıyorum.;-)
Eğer amacımız demo gibi bir şey yapmaksa ilk satırı şu şekilde değiştirirsek:

Sub Auto_Open()
[a1]=[a1]+1
If Date > CDate("10/01/2009") Or [a1]>30 Then
Application.Quit
MsgBox "Kullanım süreniz dolmuştur."
ThisWorkbook.Close False
End If
End Sub
Tarih hilesine başvuran olursa dosyayı en fazla 30 defa açabilir. Tabi ben hücreyi örnek olsun diye a1 yazdım. Siz hayal gücünüze göre bir yer bulabilirsiniz. Ben genellikle sayının bulunduğu bu hücreyi kodlarla gizlediğim bir sayfada uyguluyorum. Dolayısıyla kimsenin bu hücreye ulaşması mümkün olmuyor.
 
Syn. gncy82,
Evet aynen öyle. Ne demek istediğinizi çok iyi anlıyorum.;-)
Eğer amacımız demo gibi bir şey yapmaksa ilk satırı şu şekilde değiştirirsek:

Sub Auto_Open()
[a1]=[a1]+1
If Date > CDate("10/01/2009") Or [a1]>30 Then
Application.Quit
MsgBox "Kullanım süreniz dolmuştur."
ThisWorkbook.Close False
End If
End Sub
Tarih hilesine başvuran olursa dosyayı en fazla 30 defa açabilir. Tabi ben hücreyi örnek olsun diye a1 yazdım. Siz hayal gücünüze göre bir yer bulabilirsiniz. Ben genellikle sayının bulunduğu bu hücreyi kodlarla gizlediğim bir sayfada uyguluyorum. Dolayısıyla kimsenin bu hücreye ulaşması mümkün olmuyor.

bu kod daha güzel, kullanım miktarı eklemek..
 
Geri
Üst