geri sayım saati

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,644
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
Arkadaşlar merhaba

Ekteki soruda, normal saati sayıyor ama geri sayımı yapmıyor

Yardımlarınızı bekliyorum

İyi çalışmalar...
 

Ekli dosyalar

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
merhaba
bu şekilde deneyiniz

Kod:
Sub auto_open()
 Range("e1").Value = Now
 Range("e1").NumberFormat = ("hh:mm:ss")
 
    Range("d1").Value = TimeValue("20:17:00") - TimeValue(Now)
    Range("d1").NumberFormat = ("hh:mm:ss")
 
 Call baslat
End Sub
 

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,644
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
merhaba
bu şekilde deneyiniz

Kod:
Sub auto_open()
 Range("e1").Value = Now
 Range("e1").NumberFormat = ("hh:mm:ss")
 
    Range("d1").Value = TimeValue("20:17:00") - TimeValue(Now)
    Range("d1").NumberFormat = ("hh:mm:ss")
 
 Call baslat
End Sub
elinize sağlık, çalışıyor
 

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
merhaba
syn kuvari, kod çalışıyorsa güle güle kullanın, ancak küçük bir sorunu gözden kaçırmış olmalısınız.
kod sadece ilgili dosyada değil tüm açık dosyalarda çalışır. yani, örnek dosyanıza başka sayfa eklediğinizde, eklenen sayfanın E1 ve D1 hücresine de saati yazar.
aynı anda başka dosyalarda da çalıştığınızda bu durumu dikkate almanız gerekir.
buna göre kodu revize etmelisiniz.
 

asuzen

Altın Üye
Katılım
29 Eylül 2005
Mesajlar
137
Excel Vers. ve Dili
Office 2003 Türkçe-----
Office 2019 Türkçe-----
Altın Üyelik Bitiş Tarihi
22-06-2029
merhaba
syn kuvari, kod çalışıyorsa güle güle kullanın, ancak küçük bir sorunu gözden kaçırmış olmalısınız.
kod sadece ilgili dosyada değil tüm açık dosyalarda çalışır. yani, örnek dosyanıza başka sayfa eklediğinizde, eklenen sayfanın E1 ve D1 hücresine de saati yazar.
aynı anda başka dosyalarda da çalıştığınızda bu durumu dikkate almanız gerekir.
buna göre kodu revize etmelisiniz.
Merhabalar.
Öncelikle pylaşımlarınız ve yardımlarınız için Teşekkür ederim.
Bu kodun tüm açık dosyalarda çalışmaması için ne yapılabilir.
Birde kod da belirtilen sürenin excelde bir hücreye başvuru yapmasını nasıl sağlayabiliriz.
Daha açık anlatmak gerekirse

Sub auto_open()
Range("e1").Value = Now
Range("e1").NumberFormat = ("hh:mm:ss")

Range("d1").Value = TimeValue("20:17:00") - TimeValue(Now)
Range("d1").NumberFormat = ("hh:mm:ss")

Call baslat
End Sub

kısmındaki ("20:17:00") olarak belirtilen saati macroda belirtmeyip excelde bir hücrede nasıl belirtebiliriz. Yani macro excelde bir hücrede belirtilen saati esas alıp ona göre geri sayım yapacak. Bu şekilde her seferinde macro alanına gitmek zorunda kalmayacağız.
 

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
merhaba

syn asuzen, ek dosya işinizi görür mü?
Kod:
Sub baslat()
saat = Now + TimeValue("00:00:01")
Application.OnTime saat, "auto_open"
End Sub
Kod:
Sub auto_open()
Dim baslangıc As Date
Set s1 = ThisWorkbook.Worksheets("sayfa1")
 s1.Range("e1").Value = Now
 s1.Range("e1").NumberFormat = ("hh:mm:ss")
 baslangıc = s1.Range("a1")
    s1.Range("d1").Value = TimeValue((baslangıc)) - TimeValue(Now)
    s1.Range("d1").NumberFormat = ("hh:mm:ss")
 Call baslat
End Sub
 

Ekli dosyalar

asuzen

Altın Üye
Katılım
29 Eylül 2005
Mesajlar
137
Excel Vers. ve Dili
Office 2003 Türkçe-----
Office 2019 Türkçe-----
Altın Üyelik Bitiş Tarihi
22-06-2029
Çok çok teşekkür ederim. Gayet güzel çalışıyor.
Sayenizde bu excel i daha bi sevmeye başladım :)

Hocam birde verdiğiniz örnekteki dosya üzerinde değişiklik yaparak 2 satılı (2 satırda da sayaçlar var) hale getirdim ama 2. satırdaki sayaç otomatik çalışmıyor. Makrolardan çalıştır denince sorunsuz çalışıyor. Nedeni nedir acaba.
Örnek dosya ektedir.
 

Ekli dosyalar

Son düzenleme:

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
merhaba

bu kodu deneyiniz.
Kod:
Sub baslat()
saat = Now + TimeValue("00:00:01")
Application.OnTime saat, "auto_open"
End Sub
Sub auto_open()
Dim baslangıc As Date
Dim baslangıc_2 As Date

Set s1 = ThisWorkbook.Worksheets("sayfa1")
 s1.Range("f2").Value = Now
 s1.Range("f2").NumberFormat = ("hh:mm:ss")
 baslangıc = s1.Range("b2")
    s1.Range("e2").Value = TimeValue((baslangıc)) - TimeValue(Now)
    s1.Range("e2").NumberFormat = ("hh:mm:ss")
    
    s1.Range("f3").Value = Now
    s1.Range("f3").NumberFormat = ("hh:mm:ss")
    baslangıc_2 = s1.Range("b3")
    s1.Range("e3").Value = TimeValue((baslangıc_2)) - TimeValue(Now)
    s1.Range("e3").NumberFormat = ("hh:mm:ss")
 
 Call baslat
End Sub
 

asuzen

Altın Üye
Katılım
29 Eylül 2005
Mesajlar
137
Excel Vers. ve Dili
Office 2003 Türkçe-----
Office 2019 Türkçe-----
Altın Üyelik Bitiş Tarihi
22-06-2029
Çok teşekkür ederim gayet güzel çalışıyor.

Yanlız şimdi farkına vardığım bir olay var. Gece 23:59' a kadar bir sorun yok ama 00:00 dan sonrası yani ertesi gün için bir zaman verilirse "##########" şeklinde bir hata veriyor. Sanırım ertesi gün olduğunu idrak edemeyip :) geçmiş zaman olarak değerlendirmesinden kaynaklanıyor.
Onun dışında gayet güzel çalışıyor. Kullanacak arkadaşlara duyurulur.
 
Üst