Skip to main content

AccessTr.neT


Access Tablosundaki Alan Toplamını Excel'e Alma

Access Tablosundaki Alan Toplamını Excel'e Alma

Çözüldü #1
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.
.rar kasa.rar (Dosya Boyutu: 37,21 KB | İndirme Sayısı: 5)
Cevapla
#2

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.

Son Düzenleme: 10/05/2020, 17:44, Düzenleyen: alicimri.
Cevapla
#3

Visual Basic Code
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

Cevapla
#4
(10/05/2020 17:28)alicimri Adlı Kullanıcıdan Alıntı:

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 Adlı Kullanıcıdan Alıntı:

Visual Basic Code
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
Son Düzenleme: 10/05/2020, 18:21, Düzenleyen: kanakan52.
Cevapla
#5
(10/05/2020 17:33)feraz Adlı Kullanıcıdan Alıntı:

Visual Basic Code
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.
Cevapla
#6
and TUTAR  <0
Bu kodun sağına ekleme yapabilirsiniz bu şekilde.Yada diğer kodun aynı yerine.
Son Düzenleme: 10/05/2020, 19:06, Düzenleyen: feraz.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da