Ve bazı değişiklikler yaptım.
Son hali ektedir.Biri sayın @berduş hocamızın diğeride sayın @alicimri hocamızın kodlarına göre yaptım.
Her ikinizede ayrı ayrı teşekkürler Allah razı olsun ikinizdende.
Tabii konu taşınmış galiba dosya eklemedim kodları ekleyeyim.
Çapraz Tablo adını Pivot Tablo olarak değiştirdim ve adı alanınıda ad olarak değiştirdim.
Kod1
Kod:
Private Sub Komut0_Click()
Dim CaprazSrg As String
If IsNull(Metin1.Value) Or Metin1.Value = "" Then
MsgBox "Baslangic Tarih Bos Olamaaz....", vbCritical, "Hata"
Metin1.SetFocus
Exit Sub
End If
If IsNull(Metin3.Value) Or Metin3.Value = "" Then
MsgBox "Bitis Tarih Bos Olamaaz....", vbCritical, "Hata"
Metin3.SetFocus
Exit Sub
End If
CaprazSrg = " TRANSFORM Sum(Tablo1.say) AS Toplasay " & _
" SELECT Tablo1.ad " & _
" FROM Tablo1 " & _
" where (Tablo1.tarih) between (" & CLng(Me.Metin1.Value) & ") and (" & CLng(Me.Metin3.Value) & ")" & _
" GROUP BY Tablo1.ad " & _
" ORDER BY Tablo1.ad, Tablo1.tarih " & _
" PIVOT Tablo1.tarih"
CurrentDb.QueryDefs("Pivot Tablo").SQL = CaprazSrg
DoCmd.OpenQuery "Pivot Tablo"
End Sub
Kod2
Kod:
Private Sub Komut0_Click()
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Dim SQL As String
If IsNull(Metin1.Value) Or Metin1.Value = "" Then
MsgBox "Baslangic Tarih Bos Olamaaz....", vbCritical, "Hata"
Metin1.SetFocus
Exit Sub
End If
If IsNull(Metin3.Value) Or Metin3.Value = "" Then
MsgBox "Bitis Tarih Bos Olamaaz....", vbCritical, "Hata"
Metin3.SetFocus
Exit Sub
End If
SQL = "TRANSFORM sum(say) AS ToplamSay SELECT ad FROM Tablo1 WHERE tarih >= " & CDbl(Metin1.Value) & " And tarih <= " & CDbl(Metin3.Value) & " GROUP BY ad PIVOT tarih"
CurrentDb.QueryDefs("Pivot Tablo").SQL = SQL
DoCmd.OpenQuery "Pivot Tablo"
End Sub