Database Saatleri Toplama

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
Merhaba,

Bir adet .mdb database dosyam var.

Bu dosya içerisinde bir tabloda kişilere ait saatleri tutuyorum. Veriler; SicilNo,AdSoyad,Tarih,BaslangicSaati,BitisSaati,FarkSaati,Ay adlı alanlara yazılı.

Verilerin tipleri

Tarih =Datetime
BaslangicSaati=Datetime
BitisSaati=Datetime
FarkSaati=Text
Ay=Text

Bu bilgiler ışığında ; Ben Aylık bazda hangi kişi Toplam Kaç saati (Farksaati) bulunmaktadır. Nasıl bir SQL cümleciği ile bunu alabilirim. Format(Sum ile denediğim yöntem kalmadı olmadı malesef.

Örnek Detay Liste;
123 - Ali Veli Konya 12:30 Nisan
123 - Ali Veli Konya 10:00 Nisan
123 - Ali Veli Konya 10:30 Nisan
123 - Ali Veli Konya 08:30 Nisan

123 - Ali Veli Konya 12:30 Mayıs
123 - Ali Veli Konya 10:00 Mayıs
123 - Ali Veli Konya 10:00 Mayıs
123 - Ali Veli Konya 08:30 Mayıs

Almak istediğim Sonuç

123 - Ali Veli Konya 41:30 Nisan
123 - Ali Veli Konya 41:00 Mayıs


Not : Detaylı listeyi Listview üzerinde gösterebiliyorum,eğer SQL sorgusu ile halledemiyor isem Listviewden de özete gidebilirim
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Bende MS Acess olmadığı için, verdiğiniz örnek datayla Excel üzerinde bir örnek yaptım.

Siz SQL sorgusunu kendinize göre detaylandırırsınız....

.
 

Ekli dosyalar

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
Haluk Bey merhaba,

Deneyip size geri dönüş yapacağım.
Teşekkürler
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
Merhaba,

Haluk Bey , bu kod işimi malesef çözmedi :(
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
1 Hafta önce yazdığım mesajda belirttiğim gibi, bende MS Access olmadığı için, ben Excel üzerinde deneme yapıp çalışan kodu önermiştim.

Access dosyanız olsaydı belki bir çözüm bulurduk...

.
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
Örnek Access dosyası ektedir.
 

Ekli dosyalar

  • 510.1 KB Görüntüleme: 12

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
2,965
Excel Vers. ve Dili
Office 2013 İngilizce
Örnek Access dosyası ektedir.
Aceess dosyasında Fark Saati (TotalTime) formatını "Text" olarak belirlediğiniz için toplama yapılamaz. Toplama için Sayısal veri olarak ayarlamalısınız.
buna göre yeni Access dosyasını gönderirseniz üzerinde bakabiliriz.
iyi Çalışmalar.
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
İlk mesajımda belirtmiştim bunu text diye.
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
2,965
Excel Vers. ve Dili
Office 2013 İngilizce
Aceess dosyasında Fark Saati (TotalTime) formatını "Text" olarak belirlediğiniz için toplama yapılamaz. Toplama için Sayısal veri olarak ayarlamalısınız.
buna göre yeni Access dosyasını gönderirseniz üzerinde bakabiliriz.
iyi Çalışmalar.
Access' te "TotalTime" formatını Tarih yada sayı olarak belirledikten sonra ekli kodları kullanabilirsiniz. iyi Çalışmalar.
 

Ekli dosyalar

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi

Ekli dosyalar

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
Haluk Bey merhaba,

Ellerinize sağlık teşekkür ederim.

Ben listview kullanıyorum, ve listwieve şu şekil de toplamak istiyorum. Sicil ve Ad Soyad sonra ayları dizicem ve toplamlarını göstereceğim.

Aylar bazında saat toplamları.

223295
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Yani .... benden beklentiniz nedir ? Onu anlamadım.

.
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
Haluk Bey tekrar merhaba,

Ellerinize sağlık çok teşekkür ederim. Kodu

trSQL = "Select [Sicil], " & _
"sum(CDate([TotalTime])) as [ToplamSaat] " & _
"from [Veri6] as Table1 where [Ay]='" & Range("H2") & "'" & _
"group by [Sicil],[Ay]"


yapınca istediğim veriye ulaştım.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Neyse halletmişiniz, geçmiş olsun.

2 No'lu mesjımda belirttiğim gibi; ben strSQL'i örnek vermiş ve geliştirilmesini size bırakmıştım.

.
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
Evet, bunu yatay olarak raporlamak için kodlamam gerekecek sadece.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,489
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
"Transform" ifadesi ile arama yapınız.
 

Trilenium

Destek Ekibi
Destek Ekibi
Katılım
16 Eylül 2008
Mesajlar
1,056
Excel Vers. ve Dili
Microsoft Office 2019 English
Veysel Bey merhaba,

Powerquery için ne zamandır bakınıyordum, güzel örnek olmuş, inceleyip öğreneceğim. Çok teşekkür ederim
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,293
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Google Sheets'e merakı olanlar için;

@Korhan Ayhan arkadaşımızın önerdiği işlemin Google Sheets'de QUERY fonksiyonu kullanılarak yapılmış bir örneğini bugün kişisel blog'umda yayınladım.


.
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
2,965
Excel Vers. ve Dili
Office 2013 İngilizce
Önerdiğim çözümün sizin Access dosyası için hazırlanmış kodları ektedir. Sarı renkli alana "Sicil" girin, butona basın ...

.
Haluk hocam merhaba,

burada yer alan Access dosyası herhangi bir server altında bulunulursa; server' a kullanıcı adı ve şifre ile bağlanması durumunda; aşağıdaki connection string dizininde nasıl bir düzenleme yapmak gerekir.

IP = 192.168.1.18
Username = administrator
password = 12345

Kod:
yol = "//192.168.1.18/Users/Administrator/Desktop"
 strFile = yol & "\VTA.mdb"
    
    With objADO
        If Val(Application.Version) < 14 Then
            .Provider = "Microsoft.Jet.OLEDB.4.0"
        Else
            .Provider = "Microsoft.Ace.OLEDB.12.0"
        End If
       .ConnectionString = strFile
       .Open
    End With
teşekkürler, iyi akşamlar.
 
Üst