• DİKKAT

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

Resmi tatiller hariç tarih hesaplatma

numan şamil

Destek Ekibi
Destek Ekibi
Katılım
27 Ocak 2011
Mesajlar
1,238
Excel Vers. ve Dili
Ofis 2013 Türkçe
Merhaba Arkadaşlar
Ekli dosyamda veri giriş sayfasında bulunan forumaç butonuna bastığımda çıkan userformdan sayfa2 yi seçip veri gir butonuna bastığımda açılan userform2 den giriş tarihi ve gün sayısı girildiğinde dönüş tarihini kendi hesaplayıp (cumartesi,pazar ve tatil günleri sayılmayacak) userformdaki dönüş tarihine yazmasını istiyorum
(not:userforum3 de takvim ekli fakat nasıl kullanılacağını bilemiyorum)
ilgilenenlere teşekkür ederim
 

Ekli dosyalar

Merhaba Arkadaşlar
Ekli dosyamda veri giriş sayfasında bulunan forumaç butonuna bastığımda çıkan userformdan sayfa2 yi seçip veri gir butonuna bastığımda açılan userform2 den giriş tarihi ve gün sayısı girildiğinde dönüş tarihini kendi hesaplayıp (cumartesi,pazar ve tatil günleri sayılmayacak) userformdaki dönüş tarihine yazmasını istiyorum
(not:userforum3 de takvim ekli fakat nasıl kullanılacağını bilemiyorum)
ilgilenenlere teşekkür ederim

güncelleme
 
benim çözümüm formül ile.

eklentilerden analysis toolpak yüklenmiş olmalıdır.

resmi tatilleri ayrı bir sayfa olarak ekledim.
arefe günleri iş günü olduğu için çıkardım.
tatil günleri için dinamik alan tanımladım.

uf'dan textbox3'ü sildim.

izin bitiş tarihi kavramı gerek formül gerekse vba yönünden sıkıntılı olacağı için "işe başlama tarihi"ni kullandım.
bunun için Workday = işgünü formülünden yararlandım.
 

Ekli dosyalar

Sayın Mancubus
Öncelikle ilgi ve alakanıza çok teşekkür ederim.
(Not :ekte gönderdiğiniz dosyada kodlarda hata veriyor)

Veri girişlerinin bazı nedenlerden dolayı veri giriş sayfasındaki açılan sayfadan yapılması gerekmektedir

1 nolu mesajımda ekli dosyanın özelliği değişmeden
userforum2 deki gidiş tarihini yazıp gün sayısı yazıldıktan sonra dönüş tarihini resmi tatil günleri hariç hesaplayıp usreformdaki kutucuğa yazması ekle butonuna bastığımızda ilgili sayfaya verileri yazmasını istiyorum
(NOt:gidiş tarihi takvimde seçilerekte yazdırılabilinir mümkünse)
 
calendar clik ile tarih girmek için:

UserForm2'nin kod modülüne:
Kod:
Private Sub TextBox1_Enter()

If Not UserForm3.Visible Then
    UserForm3.Show
End If

End Sub

UserForm3'ün (calendar denetiminin bulunduğu) kod modülüne:
Kod:
Private Sub Calendar1_Click()

UserForm2.TextBox1.Value = Format(Me.Calendar1.Value, "dd/mm/yyyy")
Unload Me

End Sub



userform'u veri girmek için kullanıyoruz. bunu en pratik şekilde yapmalıyız.
benim verdiğim örnek ilave bir veri girişini ortadan kaldırıyor.
kaydet butonuna tıkladıktan sonra silinecek bir verinin textbox'ta görünmesinin istenmesini anlamlı bulmam.

yine de isterseniz, örneğin, workday foonksiyonundaki değişkenlere textbox değerlerini koyarak Texbox2'nin exit olayına yazabilirsiniz.

yaptığım araştırmada workday fonksiyonunu VBA için de olduğu gibi kullanmak yeterlidir deniliyor ama bende çalışmadı.

şöyle bir şey olabilir:

Kod:
Private Sub TextBox2_Exit()

Dim donus
donus = WorkDay(Texbox1, Texbox2, rtat)
Texbox3.Value = donus

End Sub

adım hıdır, elimden gelen budur...
 
Merhaba Arkadaşlar
Ekli dosyamda veri giriş sayfasında bulunan forumaç butonuna bastığımda çıkan userformdan sayfa2 yi seçip veri gir butonuna bastığımda açılan userform2 den giriş tarihi ve gün sayısı girildiğinde dönüş tarihini kendi hesaplayıp (cumartesi,pazar ve tatil günleri sayılmayacak) userformdaki dönüş tarihine yazmasını istiyorum
(not:userforum3 de takvim ekli fakat nasıl kullanılacağını bilemiyorum)
ilgilenenlere teşekkür ederim

Aslında daha dedaylı dosyalar var sitede örnek link aşağıda

http://www.excel.web.tr/f136/zin-takip-caly-masy-t70216.html

Dosyanıza bir adet sayfa ekledim. dini bayramların başlangıç gününü orada gösteriyor diğer taraftan userform2 yi açtığınızda tarih seçimini yaptıktan sonra textbox1 e kendisi tarihi atıyor textbox2 ye gün sayısını girdiğiniz zaman textbox3 e işe başlama tarihini yazıyor.
 
Sn :Mancubus
Teşekkür ederim kodlarınızı arşivime ekledim ilk fırsatta deneme yapacağım

Sn: Halit Hocam
Düzenlemiş olduğunuzekli dosya benim istediğim ile bire bir örtüşüyor ancak ekli dosyanızı çalıştırırken bazı hatalar alıyorum ve bazı denemelerde hesaplama hatası tesbit ettim nereden kaynaklandığını bilemiyorum

1)Userform2 deki takvim butonuna bastığımda;
TextBox1.Text = Format(yer, "dd") & "." & Ayek(Month(yer)) & "." & Year(yer) & " " & Ay(Month(yer)) & ".Ayı" hata veriyor
2) takvim sayfasındaki dini bayramlardaki günleri güncelle butonuna bastığımda ise;
M = CDate(Format("01.01." & hucre, "dd.mm.yyyy")) + i hata veriyor
3) örn: userforum2 ye gidiş tarihine 9/05/2011 tarihi el ile girilip (hata verdiği için takvim ile giremiyorum) gün sayısını 10 girdiğimde dönüş tarihini 20/05/2011 olarak veriyor 23/05/2011 olması gerekmiyormu?
4)örn:26/10/2011 tarihi girip gün sayısı 8 girildiğinde 7/11/2011 veriyor
 
Son düzenleme:
Sn :Mancubus
Teşekkür ederim kodlarınızı arşivime ekledim ilk fırsatta deneme yapacağım

Sn: Halit Hocam
Düzenlemiş olduğunuzekli dosya benim istediğim ile bire bir örtüşüyor ancak ekli dosyanızı çalıştırırken bazı hatalar alıyorum ve bazı denemelerde hesaplama hatası tesbit ettim nereden kaynaklandığını bilemiyorum

1)Userform2 deki takvim butonuna bastığımda;
TextBox1.Text = Format(yer, "dd") & "." & Ayek(Month(yer)) & "." & Year(yer) & " " & Ay(Month(yer)) & ".Ayı" hata veriyor
2) takvim sayfasındaki dini bayramlardaki günleri güncelle butonuna bastığımda ise;
M = CDate(Format("01.01." & hucre, "dd.mm.yyyy")) + i hata veriyor
3) örn: userforum2 ye gidiş tarihine 9/05/2011 tarihi el ile girilip (hata verdiği için takvim ile giremiyorum) gün sayısını 10 girdiğimde dönüş tarihini 20/05/2011 olarak veriyor 23/05/2011 olması gerekmiyormu?
4)örn:26/10/2011 tarihi girip gün sayısı 8 girildiğinde 7/11/2011 veriyor

Bu konu ile ilgili olacağını düşündüğüm bir dosya hazırladım aşağıdaki linkde

http://www.excel.web.tr/f136/yyllyk-zin-ba-lama-ve-biti-tarihleri-t105690.html#post575586
 
Merhaba halit hocam
verdiğiniz linktedeki dosyada takvimi açmak istediğimde ekteki gibi hata veriyor
Ayrıca benim dosyamada nasıl adepte edeceğimide bilmiyorum Bu hatayı neden veriyor yardımcı olabilirmisiniz.
 

Ekli dosyalar

Merhaba halit hocam
verdiğiniz linktedeki dosyada takvimi açmak istediğimde ekteki gibi hata veriyor
Ayrıca benim dosyamada nasıl adepte edeceğimide bilmiyorum Bu hatayı neden veriyor yardımcı olabilirmisiniz.

Referanslar bölümünde missing ile başlayan kulakçıkların tikini kaldırın.
 
Birde bu dosyaya bak
 
Halit hocam
tools/refeanslar bölümünde missing ile başlayan her hangi bir şey bulamadım
Burda sadece ilk 5 adeti etkin (işaretli)

Ayrıca 8, nolu mesajdaki linkte ekli dosyada ComboBox3 ve ComboBox4 de tarih 10/24/2011 şeklinde yazıyor bunu nasıl 24/10/2011 şeklinde yazdıra biliriz
 
Halit Hocam
11 nolu mesajdaki ekli dosyada gün hesaplamalardaki denemelerimin hepsini doğru hesapladı
yalnız userforumda dönüş tarihi ay/gün/yıl şeklinde yazıyor ekle dediğimizde eklenecek sayfaya doğru şekilde yazıyor userforumdaki ay/gün/yıl şeklini gün/ay/yıl şeklinde görüntüleme şansımız varmı ?
(Takvim butonuna basınca yine hata veriyor)
 
Halit Hocam
11 nolu mesajdaki ekli dosyada gün hesaplamalardaki denemelerimin hepsini doğru hesapladı
yalnız userforumda dönüş tarihi ay/gün/yıl şeklinde yazıyor ekle dediğimizde eklenecek sayfaya doğru şekilde yazıyor userforumdaki ay/gün/yıl şeklini gün/ay/yıl şeklinde görüntüleme şansımız varmı ?
(Takvim butonuna basınca yine hata veriyor)

Kod:
TextBox3.Text = CDate(Worksheets("Sayfa4").Cells(i + deg, 1).Value)

Yukarıdaki bölümü aşağıdakiyle değiştirin.

Kod:
TextBox3.Text = Format(CDate(Worksheets("Sayfa4").Cells(i + deg, 1).Value), "dd.mm.yyyy")
 
Halit hocam tarih tamam
Hocam dosyada sayfa4 de bizim yapacağımız bir şey varmı?
sayfa4de bu yılın işgünlerini aktar butonuna bastığımızda
baslangic = CDate(Format("01.01." & hucre1, "dd.mm.yyyy")) hata veriyor?
 
Halit hocam tarih tamam
Hocam dosyada sayfa4 de bizim yapacağımız bir şey varmı?
sayfa4de bu yılın işgünlerini aktar butonuna bastığımızda
baslangic = CDate(Format("01.01." & hucre1, "dd.mm.yyyy")) hata veriyor?

Bilgiler sayfa4 ten alınıyor herhalde sizin bölgesel ayarlarınzda tarih bölümünde bir sıkıntı olduğunu sanıyorum.

Bölgesel ayarlardaki tarih formatı "dd.mm.yyyy" gibi olmalı
 
Halit Hocam
bölgesel ayarlarından tarih formatını düzelttim
hata almıyorum ayrıca takvim butonunu basıp takvimide kullanabiliyorum
çok teşekkür ederim ellerine sağlık ,hakkını helal et
iyi çalışmalar
 
Halit Hocam
bölgesel ayarlarından tarih formatını düzelttim
hata almıyorum ayrıca takvim butonunu basıp takvimide kullanabiliyorum
çok teşekkür ederim ellerine sağlık ,hakkını helal et
iyi çalışmalar

İyi çalışmalar
 
Sn Halit Hocam
Yine rahatsız ediyorum mesaj 6 daki dosyanızda (ekli dosya) örn :2012 veya yılını seçip işlem yapmak istersek kodlarda negibi bir düzenleme yapabiliriz örnek dosyalar üzerinde çok çalıştım ama adepte edemedim.
 

Ekli dosyalar

Sn Halit Hocam
Yine rahatsız ediyorum mesaj 6 daki dosyanızda (ekli dosya) örn :2012 veya yılını seçip işlem yapmak istersek kodlarda negibi bir düzenleme yapabiliriz örnek dosyalar üzerinde çok çalıştım ama adepte edemedim.

bu bölümü
Kod:
hucre = Val(Format(Now, "yyyy"))
bununla değiştirip deneyin
Kod:
hucre = "2012"

not:birinci bölümdeki kod zaten 2012 yılına ğirdiğimizde düğmeye tıkladığınız zaman kendisini bu doğrultuda yeniliyecektir.
 
Geri
Üst