AccessTr.neT
Access Tablosundaki Alan Toplamını Excel'e Alma - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Excel (https://accesstr.net/forum-microsoft-excel.html)
+--- Forum: Excel Cevaplanmış Soruları (https://accesstr.net/forum-excel-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Access Tablosundaki Alan Toplamını Excel'e Alma (/konu-access-tablosundaki-alan-toplamini-excel-e-alma.html)

Sayfalar: 1 2 3


Access Tablosundaki Alan Toplamını Excel'e Alma - kanakan52 - 10/05/2020

Merhaba Değerli Üstadlar,

Ekte örneği bulunan Accsess içindeki KasaKayit taplosu toplamını excel' e almak istiyorum, Pozitif tutarlar tahsilat , Negatif tutarlar ise Ödeme olacak şekilde Kasa Kodu ve tarihi de dikkate alarak iki farklı textbox'a aldırmak istiyorum.

Exceldeki Çoketopla gibi

Textbox1.value=çoketopla(KasaKayit.Toplam;KASA_KODU;"="&textbox4.value;tarih;">=" & textbox5;tarih;"<="& textbox6

gibi..

Şimdiden teşekkür ederim.


Re: Accsess Tablosundaki Alan Toplamını Excel' E Alma - alicimri - 10/05/2020

Kod:
SELECT KasaKayit.[TARIH], KasaKayit.[KASA_KOD], Sum(IIf([TUTAR]<0,[TUTAR],0)) AS ÖDEME, Sum(IIf([TUTAR]>0,[TUTAR],0)) AS TAHSİLAT
FROM KasaKayit
GROUP BY KasaKayit.[TARIH], KasaKayit.[KASA_KOD]
HAVING (((KasaKayit.[TARIH])=#5/10/2020#) AND ((KasaKayit.[KASA_KOD])="101"));

Kod:
SELECT Sum(IIf([TUTAR]<0,[TUTAR],0)) AS ÖDEME, Sum(IIf([TUTAR]>0,[TUTAR],0)) AS TAHSİLAT
FROM KasaKayit
WHERE (((KasaKayit.[TARIH])=#5/10/2020#) AND ((KasaKayit.[KASA_KOD])="101"));

İkisi de aynı sonucu verir.


RE: Accsess Tablosundaki Alan Toplamını Excel' E Alma - feraz - 10/05/2020

Private Sub CommandButton1_Click()
Set baglan = CreateObject("adodb.connection")
Set rs = CreateObject("adodb.recordset")
baglan.Open "provider=Microsoft.ACE.OLEDB.12.0;data source=" & ThisWorkbook.Path & "\Kasa.accdb"
sorgu = "SELECT SUM(TUTAR)as 'aa'  FROM KasaKayit WHERE TARIH between  #" & Format(TextBox5.Text, "mm\/dd\/yyyy") & "#" & _
                                              "and  #" & Format(TextBox6.Text, "mm\/dd\/yyyy") & "# and TUTAR >0"

rs.Open sorgu, baglan, 1, 1
TextBox1.Value = Format(rs(0), "currency")
rs.Close

sorgu = "SELECT SUM(TUTAR)as 'aa'  FROM KasaKayit WHERE TARIH between  #" & Format(TextBox5.Text, "mm\/dd\/yyyy") & "#" & _
                                              "and  #" & Format(TextBox6.Text, "mm\/dd\/yyyy") & "# and TUTAR  <0"

rs.Open sorgu, baglan, 1, 1
TextBox2.Value = Format(rs(0), "currency")
TextBox3.Value = Format(TextBox1.Value - (-TextBox2.Value), "currency")

rs.Close
baglan.Close
Set rs = Nothing
Set baglan = Nothing

End Sub



RE: Accsess Tablosundaki Alan Toplamını Excel' E Alma - kanakan52 - 10/05/2020

(10/05/2020, 17:28)alicimri yazdı:
Kod:
SELECT KasaKayit.[TARIH], KasaKayit.[KASA_KOD], Sum(IIf([TUTAR]<0,[TUTAR],0)) AS ÖDEME, Sum(IIf([TUTAR]>0,[TUTAR],0)) AS TAHSİLAT
FROM KasaKayit
GROUP BY KasaKayit.[TARIH], KasaKayit.[KASA_KOD]
HAVING (((KasaKayit.[TARIH])=#5/10/2020#) AND ((KasaKayit.[KASA_KOD])="101"));

Kod:
SELECT Sum(IIf([TUTAR]<0,[TUTAR],0)) AS ÖDEME, Sum(IIf([TUTAR]>0,[TUTAR],0)) AS TAHSİLAT
FROM KasaKayit
WHERE (((KasaKayit.[TARIH])=#5/10/2020#) AND ((KasaKayit.[KASA_KOD])="101"));

İkisi de aynı sonucu verir.


alicimri hocam selamlar,

Cevabınız için teşekkür ederim. Emeğinize sağlık hocam

(10/05/2020, 17:33)feraz yazdı:
Private Sub CommandButton1_Click()
Set baglan = CreateObject("adodb.connection")
Set rs = CreateObject("adodb.recordset")
baglan.Open "provider=Microsoft.ACE.OLEDB.12.0;data source=" & ThisWorkbook.Path & "\Kasa.accdb"
sorgu = "SELECT SUM(TUTAR)as 'aa'  FROM KasaKayit WHERE TARIH between  #" & Format(TextBox5.Text, "mm\/dd\/yyyy") & "#" & _
                                              "and  #" & Format(TextBox6.Text, "mm\/dd\/yyyy") & "# and TUTAR >0"

rs.Open sorgu, baglan, 1, 1
TextBox1.Value = Format(rs(0), "currency")
rs.Close

sorgu = "SELECT SUM(TUTAR)as 'aa'  FROM KasaKayit WHERE TARIH between  #" & Format(TextBox5.Text, "mm\/dd\/yyyy") & "#" & _
                                              "and  #" & Format(TextBox6.Text, "mm\/dd\/yyyy") & "# and TUTAR  <0"

rs.Open sorgu, baglan, 1, 1
TextBox2.Value = Format(rs(0), "currency")
TextBox3.Value = Format(TextBox1.Value - (-TextBox2.Value), "currency")

rs.Close
baglan.Close
Set rs = Nothing
Set baglan = Nothing

End Sub

feraz hocam sana buraya yazacağım yorumlar az kalıcak. Onun için beni yorma Img-grin  Yine hızır gibi yetiştin. Bu konuya benzer bir iki ssorum daha olabilir. Önce bunu bir kavramaya çalışayım Img-grin


RE: Accsess Tablosundaki Alan Toplamını Excel' E Alma - kanakan52 - 10/05/2020

(10/05/2020, 17:33)feraz yazdı:
Private Sub CommandButton1_Click()
Set baglan = CreateObject("adodb.connection")
Set rs = CreateObject("adodb.recordset")
baglan.Open "provider=Microsoft.ACE.OLEDB.12.0;data source=" & ThisWorkbook.Path & "\Kasa.accdb"
sorgu = "SELECT SUM(TUTAR)as 'aa'  FROM KasaKayit WHERE TARIH between  #" & Format(TextBox5.Text, "mm\/dd\/yyyy") & "#" & _
                                              "and  #" & Format(TextBox6.Text, "mm\/dd\/yyyy") & "# and TUTAR >0"

rs.Open sorgu, baglan, 1, 1
TextBox1.Value = Format(rs(0), "currency")
rs.Close

sorgu = "SELECT SUM(TUTAR)as 'aa'  FROM KasaKayit WHERE TARIH between  #" & Format(TextBox5.Text, "mm\/dd\/yyyy") & "#" & _
                                              "and  #" & Format(TextBox6.Text, "mm\/dd\/yyyy") & "# and TUTAR  <0"

rs.Open sorgu, baglan, 1, 1
TextBox2.Value = Format(rs(0), "currency")
TextBox3.Value = Format(TextBox1.Value - (-TextBox2.Value), "currency")

rs.Close
baglan.Close
Set rs = Nothing
Set baglan = Nothing

End Sub


@feraz hocam kodlara KASA_KODU alanını nasıl ekleyebilirim.


RE: Accsess Tablosundaki Alan Toplamını Excel' E Alma - feraz - 10/05/2020

and TUTAR  <0
Bu kodun sağına ekleme yapabilirsiniz bu şekilde.Yada diğer kodun aynı yerine.