Tarih seçici ekleme hk

Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
İstediğim bir hücreye tıkladığımda tüm tarihi karşıma getirmesini oradan seçtiğimdede o tarihi o hücreye eklemem mümkünmü böyle birşey yapılabilirmi.

Mesela o hücreye yada hücredeki birşeye tıkladığımda aşağıdaki gibi tarih çıksın ve ordan seçtiğim tarih o hücreye eklensin.

 
Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Hocam teşekkür ederim tam olarak istediğim buydu. Bana bunun nasıl yapıldığını anlatırsanız çok memnun olurum. Çünkü hem bu işi öğrenmek hemde istediğim gibi kişileştirmek istiyorum.
 

turist

Destek Ekibi
Destek Ekibi
Katılım
18 Kasım 2009
Mesajlar
5,102
Excel Vers. ve Dili
2013 64Bit
English
Forumda ve forum dışında "Excel Takvim uygulaması" olarak aradığınızda birçok örneğe rastlayabilirsiniz.
Ancak; her uygulama her excel versiyonunda tam verimli olarak çalışmayacaktır.32 bit veya 64 bit olması da ayrıca sorun yaratabilecektir.
Eklenen dosyadaki kod ise yabancı kaynaklardan derlenmiş, ufak bir revizyon ile Excel versiyonlarında Türkçe Takvim olarak kullanılabilmektedir.
Takvimi oluşturan kodların esası VBA kod sayfasında görüleceği gibi, Class Modules altında yer alan "cCalendar" içindedir.
Buradaki kodlar, Takvim Formu'nu belirler, günlerin ayların sıralanaması vb. gibi.

Forms altında görülen Takvim Formu ise Tarih seçiminde aktif hücreye seçilen tarihi yazdırmayı sağlar.
Aktif Hücreye tarihi yazdıktan sonra Takvim kapanır.
Private Sub Calendar1_Click()
ActiveCell.Value = Calendar1.Value
Unload Me

End Sub

Yine Sayfa1 kodunda görüleceği gibi; Sayfa1 de çift tıklama yapıldığında Takvim Formu'nun görüntülenmesi sağlanır.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Takvim.Show
End Sub

Kişiselleştirmek isterseniz Class Modülündeki "CCalendar" kodlarını izlemeniz ve değişikliklik yapmanız gerekir.
Ancak; bilmeden müdahale etmek yanlışlığa neden olabilir. Dikkatlice denemeler yaparak "kendi" takviminizi oluşturabilirsiniz.
İyi çalışmalar.
 
Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Yine Sayfa1 kodunda görüleceği gibi; Sayfa1 de çift tıklama yapıldığında Takvim Formu'nun görüntülenmesi sağlanır.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Takvim.Show
End Sub
Peki hocam takvimin herhangi bir hücreye çift tıklama ile değilde kendi belirleyeceğimiz hücreye tıklandığında görünmesini sağlamak için ilgili kodun neresinde nasıl bir değişiklik yapmak gerekir.
 

turist

Destek Ekibi
Destek Ekibi
Katılım
18 Kasım 2009
Mesajlar
5,102
Excel Vers. ve Dili
2013 64Bit
English
Bunun için:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A5")) Is Nothing Then Exit Sub
Takvim.Show
End Sub

şeklinde kullanabilirsiniz.
Örnek "A5" hücresine geldiğinizde Takvim çıkar ve seçilen tarih "A5"e yazılır.
Kendinize uygun şekilde "A5" yerinew istediğiniz tek bir hücreyi verebilirsiniz.

Tek hücrede değil de belli bir aralıkta olmasını isterseniz; o zaman;

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A5:A7")) Is Nothing Then Exit Sub
Takvim.Show
End Sub

yapabilirsiniz.
Buradaki örnek aralık "A5:A7" yi de istediğiniz şekilde uyarlayabilirsiniz.

İyi çalışmalar...
 
Katılım
14 Kasım 2017
Mesajlar
618
Excel Vers. ve Dili
2010 Türkçe
Altın Üyelik Bitiş Tarihi
07-01-2024
Teşekkür ederim eline sağlık
 
Katılım
17 Kasım 2013
Mesajlar
62
Excel Vers. ve Dili
türkçe
Bunun için:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A5")) Is Nothing Then Exit Sub
Takvim.Show
End Sub

şeklinde kullanabilirsiniz.
Örnek "A5" hücresine geldiğinizde Takvim çıkar ve seçilen tarih "A5"e yazılır.
Kendinize uygun şekilde "A5" yerinew istediğiniz tek bir hücreyi verebilirsiniz.

Tek hücrede değil de belli bir aralıkta olmasını isterseniz; o zaman;

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A5:A7")) Is Nothing Then Exit Sub
Takvim.Show
End Sub

yapabilirsiniz.
Buradaki örnek aralık "A5:A7" yi de istediğiniz şekilde uyarlayabilirsiniz.

İyi çalışmalar...
peki hocam a5:a7 arasında tek değilde çift tıklama yaparak tarihi açmak istersek nasıl yapabiliriz
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,584
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Intersect(Target, Range("A5:A7")) Is Nothing Then Exit Sub
    Cancel = True
    Takvim.Show
End Sub
 
Katılım
5 Temmuz 2019
Mesajlar
1
Excel Vers. ve Dili
office 14 TR
Bunun için:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A5")) Is Nothing Then Exit Sub
Takvim.Show
End Sub

şeklinde kullanabilirsiniz.
Örnek "A5" hücresine geldiğinizde Takvim çıkar ve seçilen tarih "A5"e yazılır.
Kendinize uygun şekilde "A5" yerinew istediğiniz tek bir hücreyi verebilirsiniz.

Tek hücrede değil de belli bir aralıkta olmasını isterseniz; o zaman;

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A5:A7")) Is Nothing Then Exit Sub
Takvim.Show
End Sub

yapabilirsiniz.
Buradaki örnek aralık "A5:A7" yi de istediğiniz şekilde uyarlayabilirsiniz.

İyi çalışmalar...
Merhabalar, ben bu tarihin yanında ek olarak saati de seçmek istiyorum nasıl yapabilirim? Yardımcı olur musunuz?
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,584
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
İlgili nesnede tıklama olayında veriyi hücreye yazan kod bölümünde bu işlemi yapabilirsiniz.

Aşağıdaki gibi bir kurgu düşünebilirsiniz.

Hücre Adresi = Now
 
Katılım
20 Haziran 2018
Mesajlar
44
Excel Vers. ve Dili
MS OFFICE 2011 - MAC
Forumda ve forum dışında "Excel Takvim uygulaması" olarak aradığınızda birçok örneğe rastlayabilirsiniz.
Ancak; her uygulama her excel versiyonunda tam verimli olarak çalışmayacaktır.32 bit veya 64 bit olması da ayrıca sorun yaratabilecektir.
Eklenen dosyadaki kod ise yabancı kaynaklardan derlenmiş, ufak bir revizyon ile Excel versiyonlarında Türkçe Takvim olarak kullanılabilmektedir.
Takvimi oluşturan kodların esası VBA kod sayfasında görüleceği gibi, Class Modules altında yer alan "cCalendar" içindedir.
Buradaki kodlar, Takvim Formu'nu belirler, günlerin ayların sıralanaması vb. gibi.

Forms altında görülen Takvim Formu ise Tarih seçiminde aktif hücreye seçilen tarihi yazdırmayı sağlar.
Aktif Hücreye tarihi yazdıktan sonra Takvim kapanır.
Private Sub Calendar1_Click()
ActiveCell.Value = Calendar1.Value
Unload Me

End Sub

Yine Sayfa1 kodunda görüleceği gibi; Sayfa1 de çift tıklama yapıldığında Takvim Formu'nun görüntülenmesi sağlanır.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Takvim.Show
End Sub

Kişiselleştirmek isterseniz Class Modülündeki "CCalendar" kodlarını izlemeniz ve değişikliklik yapmanız gerekir.
Ancak; bilmeden müdahale etmek yanlışlığa neden olabilir. Dikkatlice denemeler yaparak "kendi" takviminizi oluşturabilirsiniz.
İyi çalışmalar.
hocam aynısını kopyalayıp kopyalayıp kendi sayfama yapıştırdım ama " Private Sub UserForm_Initialize() " bu hatayı alıyorum sürekli. nerde yanlış yapıyorum acaba
 

cakto

Altın Üye
Katılım
2 Ekim 2011
Mesajlar
45
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
25-11-2026
İstediğim bir hücreye tıkladığımda tüm tarihi karşıma getirmesini oradan seçtiğimdede o tarihi o hücreye eklemem mümkünmü böyle birşey yapılabilirmi.

Mesela o hücreye yada hücredeki birşeye tıkladığımda aşağıdaki gibi tarih çıksın ve ordan seçtiğim tarih o hücreye eklensin.

Hocam dosya görünmüyor
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,584
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Dosyaya 2. mesajdan ulaşabilirsiniz.
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,552
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Teşekkürler Sayın AYHAN.
 

cakto

Altın Üye
Katılım
2 Ekim 2011
Mesajlar
45
Excel Vers. ve Dili
2010 türkçe
Altın Üyelik Bitiş Tarihi
25-11-2026
Bunun için:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A5")) Is Nothing Then Exit Sub
Takvim.Show
End Sub

şeklinde kullanabilirsiniz.
Örnek "A5" hücresine geldiğinizde Takvim çıkar ve seçilen tarih "A5"e yazılır.
Kendinize uygun şekilde "A5" yerinew istediğiniz tek bir hücreyi verebilirsiniz.

Tek hücrede değil de belli bir aralıkta olmasını isterseniz; o zaman;

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A5:A7")) Is Nothing Then Exit Sub
Takvim.Show
End Sub

yapabilirsiniz.
Buradaki örnek aralık "A5:A7" yi de istediğiniz şekilde uyarlayabilirsiniz.

İyi çalışmalar...
Hocam bende b2 hücresi seçili ise ve çift tıklandığında takvimin çıkmasını istiyorum. Tşk ler
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,584
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aşağıdaki kodu kullanabilirsiniz.

Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Intersect(Target, Range("B2")) Is Nothing Then Exit Sub
    Cancel = True
    Takvim.Show
End Sub
 
Katılım
16 Mart 2018
Mesajlar
1
Excel Vers. ve Dili
2007
Hocam sağa tıklayınca tarih açan örnek excel dosyası indirmiştim ama bu komut açtığım tüm excel dosyalarında ( istemediğim halde) çıkıyor, başka bir dosyada sağa tıklayıp işlem yapamıyorum yardım edebilir misiniz
 
Üst