Soru İstenilen Tarih Aralığındaki Verileri Listeleme Hakkında.

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Merhabalar,
Çalışma sayfamda 9 adet test sayfaları mevcut, bu sayfalar içerisinde userform üzerinde seçmiş olduğum tarih/saat bilgisine göre arama yaptırıp ilgili verileri listelemek istemekteyim. Örnek dosyam içerisinde ayrıntılı olarak açıklamaya çalıştım.
Örnek dosyalara bakarak userform üzerinde tarih / zaman bilgisini oluşturabildim fakat listeleme kısmı ile ilgili olan kısımda kaldım:-(
 

Ekli dosyalar

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Merhabalar,
İlk mesajımda belirtmiş olduğum işlemi daha kolay olması adına başka nasıl yapılabilir acaba :-(
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,084
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Ben mi göremiyorum yoksa userform üzerinde tarih ve saat seçmek için herhangi bir unsur yok mu?
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,084
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Bu arada bir şeyler yaptım ama userformdaki nesnelere göre işinizi görüp göremeyeceğini bilmiyorum. Aşağıdaki kodlar normalde userformdaki listele düğmesine eklendiğinde userformdaki textbox1 ve textbox2'ye göre sorgulama yapıp sonuçları listeler. Ancak sorgunun tarih ve saat türünde olması nedeniyle kullanacağınız nesneye de bağlı olarak kodda geliştirme yapılması gerekebilir:

Kod:
Private Sub CommandButton1_Click()
For i = 1 To Sheets.Count
    If Sheets(i).Name <> "LİSTELE" Then
        sonC = Sheets(i).Cells(Rows.Count, "C").End(3).Row
        For j = 3 To sonC
            If Sheets(i).Cells(j, "G") = TextBox1 And Sheets(i).Cells(j, "H") = TextBox2 Then
                yeni = Sheets("LİSTELE").Cells(Rows.Count, "A").End(3).Row+1
                Sheets("LİSTELE").Cells(yeni, "A") = yeni - 2
                Sheets("LİSTELE").Cells(yeni, "B") = Sheets(i).Cells(j, "C")
                Sheets("LİSTELE").Cells(yeni, "C") = Sheets(i).Cells(j, "E")
                Sheets("LİSTELE").Cells(yeni, "D") = Sheets(i).Cells(j, "F")
                Sheets("LİSTELE").Cells(yeni, "E") = Sheets(i).[E1]
            End If
        Next
    End If
Next
End Sub
 

Ziynettin

Destek Ekibi
Destek Ekibi
Katılım
18 Nisan 2008
Mesajlar
1,104
Excel Vers. ve Dili
office2010
Ben mi göremiyorum yoksa userform üzerinde tarih ve saat seçmek için herhangi bir unsur yok mu?
Yusuf Bey,

Form üzeride tarih (DTPicker1), saat (DTPicker2) mevcut.


Bende çalışmıştım. Alternatif olsun.

Not: Saat 24 biçiminde girilmeli.
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,084
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Yusuf Bey,

Form üzeride tarih (DTPicker1), saat (DTPicker2) mevcut.


Bende çalışmıştım. Alternatif olsun.

Not: Saat 24 biçiminde girilmeli.
Teşekkürler Ziynettin Bey.

Bende açılışta could not load some objects hatası veriyor. Bahsettiğiniz DTpicker1 ve DTpicker2 nesnelerinden dolayı sanıyorum. Onlar nereden yükleniyor acaba?
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,084
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Teşekkürler ancak bende Additional Controls kısmıdna Microsoft Date and Time Picker eklentisi listede görünmüyor.
213422
 

Ziynettin

Destek Ekibi
Destek Ekibi
Katılım
18 Nisan 2008
Mesajlar
1,104
Excel Vers. ve Dili
office2010
Versiyon kaynaklı olabilir. Eklenti gerekebilir internetten araştırın.
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Ben mi göremiyorum yoksa userform üzerinde tarih ve saat seçmek için herhangi bir unsur yok mu?
Yusuf Bey merhabalar,
Öncelikle ilginiz için çok teşekkür ederim. Şimdi fark ettim bende iş yerimdeki excel de dediğiniz gibi eklenti çıkmıyor:-(
Sayın Ziynettin beyi'in 7 nolu mesajındaki belirtmiş olduğu eklentiyi , eklemeye çalışıyordum ama başarılı olamadım o konuda:-(

Yalnız eklenti iş yerimdeki pc de olmayınca Sayın Ziynettin bey'in yapmış olduğu dosyayı deneyemedim:-(
Sizin yapmış olduğunuz kodları denedim fakat listeleme yapmadı:-(
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Yusuf Bey,

Form üzeride tarih (DTPicker1), saat (DTPicker2) mevcut.


Bende çalışmıştım. Alternatif olsun.

Not: Saat 24 biçiminde girilmeli.
Ziynettin bey, ilginiz için çok teşekkür ederim.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,084
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Yusuf Bey merhabalar,
Öncelikle ilginiz için çok teşekkür ederim. Şimdi fark ettim bende iş yerimdeki excel de dediğiniz gibi eklenti çıkmıyor:-(
Sayın Ziynettin beyi'in 7 nolu mesajındaki belirtmiş olduğu eklentiyi , eklemeye çalışıyordum ama başarılı olamadım o konuda:-(

Yalnız eklenti iş yerimdeki pc de olmayınca Sayın Ziynettin bey'in yapmış olduğu dosyayı deneyemedim:-(
Sizin yapmış olduğunuz kodları denedim fakat listeleme yapmadı:-(
VErdiğim kodun listelememesi normal çünkü listelemek için userform üzerinde bulunması gereken textbox1 ve textbox2'ye bakıyor. Onlar da olmadığından listelemiyor doğal olarak. Ben sadece mantığının nasıl olması gerektiğini göstermek için paylaşmıştım.

Zaten Sayın Ziynettin çok güzel bir çalışma yapmış. Gösterdiği yoldan ilerleyip Dtpicker kontrolünü excele ekleyince makro düzgün bir şekilde çalıştı. Yalnız sanırım kendisinin gözünden kaçmış, sayfa adlarını kontrol satırında <>"LİSTE" şeklinde yazmış, onu <>"LİSTELE" şeklinde yapmak gerekiyor.

Dtpickeri yükleme adımlarını o videodan yola çıkarak anlatmaya çalışayım:

Öncelikle userformda dtpicker ve monthview nesnelerinin olup olmadığını kontrol ediyoruz. Bu kontrolü VBA sayfasında userform seçiliyken toolbox araç çubuğunda görmeliyiz. Eğer orda yoksa gerekli eklenti yüklü değil demektir.

Yüklemek için Toolbox araç çubuğuna sağ tıklayıp Additional Additional Controls'u seçiyoruz.
Açılan lsitede aşağı doğru kontrol edip Microsoft Date and Time Picker ve Microcoft Monthvies Control nesnelerinin olup olmadığına bakıyoruz. Eğer bu listede o nesneler varsa yanlarındaki kutucukları işaretleyerek bu nesneleri aktifleştiriyoruz. Artık userform üzerine dtpicker nesnelerini ekleyebiliriz.

Eğer o listede bu nesneler yoksa işimiz biraz uzuyor. Önce internetten MSCOMCT2.ocx dosyasını bulup indirmemiz gerekiyor. Ben aşağıdaki siteden indirdim:


İnen dosya sıkıştırılmış olduğundan konumunu bildiğimiz bir klasöre çıkartıyoruz, örneğin masaüstü.

Daha sonra bu dosyayı olması gereken yere taşımamız gerekiyor. kopyalamamız gereken yer eğer 32 bit windows kullanıyorsak Windows klasörü altındaki System32 klasörü; 64 bit kullanıyorsak yine Windows klasörü altındaki SysWOW64 klasörü.

Sonraki aşama indirdiğimiz bu dosyayı tanıtmak/register etmek. Bunun için başlata tıklayıp cmd yazıyoruz. Çıkan listede Komut isteminin üzerine sağ tıklayıp Yönetici Olarak Çalıştır diyoruz.

Komut istemi system32 klasöründe açılıyor. Öncelikle bir önceki adımda Mscomct2.ocx dosyasını taşıdığımız klasöre geçmemiz gerekiyor. Bunun için

cd c:\windows\syswow64

yazıp (32 bit sistemlerde syswow64 yerine System32 yazıyoruz) Enter'e basıyoruz.


Daha sonra

regsvr32 mscomct2.ocx

yazıp entere basıyoruz. İşlemin başarıyla gerçekleştiğine dair bir mesaj çıkınca işlem tamamlanmış oluyor.

Artık en başa dönüp toolbox araç çubuğundan date and time picker ve monthview picker nesnelerini ekleyebilirsiniz.

Gösterdiğiniz yol için çok teşekkürler @Ziynettin
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Yusuf bey tekrar merhabalar,
Çok teşekkür ederim gerçekten, çok güzel şekilde açıklamışsınız,emeğinize sağlık.
Yalnız anlattığınız şekilde yaptığımda "modül bulunamadı" uyarısı aldım . Tekrar tekrar denedim ama aynı uyarı aldım :-(
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,084
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Yusuf bey tekrar merhabalar,
Çok teşekkür ederim gerçekten, çok güzel şekilde açıklamışsınız,emeğinize sağlık.
Yalnız anlattığınız şekilde yaptığımda "modül bulunamadı" uyarısı aldım . Tekrar tekrar denedim ama aynı uyarı aldım :-(
Ben bu şekilde yükledim, sizdeki hata konusunda maalesef yorum yapamayacağım.
 

yesimgurol

Altın Üye
Katılım
8 Aralık 2011
Mesajlar
942
Excel Vers. ve Dili
Excel 2016,32bit
Altın Üyelik Bitiş Tarihi
18-11-2024
Tekrar merhabalar,
Ne yazık ki iş yerimdeki bilgisayarımda "DTpicker1" modülünü yükleyemediğimden dolayı Sayın Ziynettin bey'in 5 nolu mesaj da yapmış olduğu kodları iş yerimde çalıştıramadım:-(

Sayın Yusuf Beyi'in yapmış olduğu kodlar üzerinden yani textboxlar üzerinden yapılabilir mi?
Yani ;
Textbox1'e güncel tarih,
Textbox2'ye güncel saat ( yalnızca saat formatı "ss" ) bilgisi alsak,
Sayfalarda bu değerlere göre arama yaptıra bilirmiyiz:-(
 
Üst