Formda Toplama Yapamıyorum

Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Ekte yollamış olduğum çalışmanın Öğrenci ödeme formu içindeki sekme denetiminde ilgili öğrenciye ait ödemeleri hem ayrı ayrı hemde hepsini bir genel olarak topladım.

Sekme denetiminin diğer sayfasında ise bütün öğrencilerin ödemelerini toplamak istiyorum. Yine gurup gurup ve genel olarak. Yani 1.öğrencinin aidatı, 2.öğrencinin aidatı toplanıp görüntülenecek. Yine bu metin kutularıda kendi aralarında toplanıp bütün öğrencilerden ne kadar ödeme girmiş o beli olacak... İlk yaptığım yoldan gittim toplamı alamıyorum hata veriyo.

Yardımlarınızı bekliyorum...
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın TUGRasim,

Öncelikle sekmeye ilgili metin kutularını ekleyin. Ancak ismlendirmeyi değiştirin (Bu size ilerde çok yardımı olacak) örneğin aidat toplamlarını göstereceğiniz metin kutusuna txtToplamAidat adını verin ve aşağıya doğru metin kutularınızı ekleyin.

Sonra kod yazım sayfasına aşağıdaki kodları kopyalayıp yapıştırın:

Kod:
Private Sub Form_Current()
Call toplam
End Sub
Private Sub Form_Load()
Call toplam
End Sub
Public Sub toplam()
Dim rs As New ADODB.Recordset
Dim strSQL As String
strSQL = "SELECT Sum(Odeme.Aidat) AS ToplaAidat, Sum(Odeme.Kırtasiye) AS ToplaKırtasiye, Sum(Odeme.Servis) AS ToplaServis, Sum(Odeme.[Folk/Bale/]) AS [ToplaFolk/Bale/], Sum(Odeme.Tiyatro) AS ToplaTiyatro, Sum(Odeme.Kostüm) AS ToplaKostüm, Sum(Odeme.Diğer) AS ToplaDiğer FROM Odeme;"
rs.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
Me.txtToplamAidat = rs(0)
Me.txtToplamKırtasiye = rs(1)
Me.txtGenelToplam = Me.txtToplamAidat + Me.txtToplamKırtasiye
Ben iki alanı ayarladım siz diğer alanları ona göre düzenleyin.

Yukarıdaki kodlarla bir ADO kayıt kümesi açıp strSQL cümlesini SQL sorgusu olarak çalıştırıp ilgili alanların toplamlarını aldım. siz rs(2), rs(3) gibi devam edin. En sonda da txtGenelToplam adlandırdığınız metin kutusunda toplamları alın. Bir şey dikkatimi çekti alanların biçim formatlarında TL kullanıyorsunuz başlarına Y ekleyerek YTL yapın daha düzgün görüneceklerdir.

İyi çalışmalar:)
 
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Sayın modalı metin kutularını oluşturdum...
Açıkçası sadece acces üzerinde ki basit fonksiyonlarla ve birde formda takip edebildiğim ölçüde yapmaya çalışıyorum bu programı...

Bahsettiğiniz kodu Vb de form alanına yazdım fakat hata verdi.

Yukarıdaki kodlarla bir ADO kayıt kümesi açıp strSQL cümlesini SQL sorgusu olarak çalıştırıp ilgili alanların toplamlarını aldım.
Açıkçası bu yazdığınız cümleden bir şey anlamadım özürdilerim. Birazdaha açık yazarsanız çok sevinirim. Tam olarak kodu nereye yazacağımı söylerseniz uygulayabilirim sanırım.

Ben kodu düzenledim sanırım aşağıdaki gibi...

Kod:
Private Sub Form_Current()
Call toplam
End Sub
Private Sub Form_Load()
Call toplam
End Sub
Public Sub toplam()
Dim rs As New ADODB.Recordset
Dim strSQL As String
strSQL = "SELECT Sum(Odeme.Aidat) AS ToplaAidat, Sum(Odeme.Kırtasiye) AS ToplaKırtasiye, Sum(Odeme.Servis) AS ToplaServis, Sum(Odeme.[Folk/Bale/]) AS [ToplaFolk/Bale/], Sum(Odeme.Tiyatro) AS ToplaTiyatro, Sum(Odeme.Kostüm) AS ToplaKostüm, Sum(Odeme.Diğer) AS ToplaDiğer FROM Odeme;"
rs.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
Me.txtToplamAidat = rs(0)
Me.txtToplamKırtasiye = rs(1)
Me.txtToplamServis=rs(2)
Me.txtToplamFolkBale=rs(3)
Me.txtToplamTiyatro=rs(4)
Me.txtToplamKostüm=rs(5)
Me.txtToplamYüzme=rs(6)
Me.txtToplamDiğer=rs(7)



Me.txtGenelToplam = Me.txtToplamAidat + Me.txtToplamKırtasiye + Me.txtToplamServis + Me.txtToplamFolkBale + Me.txtToplamTiyatro + Me.txtToplamKostüm + Me.txtToplamYüzme + Me.txtToplamDiğer
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Kodları formun kod yazma penceresine kopyalayıp yapıştırın.

İyi çalışmalar
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Ayrıca referanslarınızı da kontrol edin,

Microsoft ActiveX Data Object Library referansını da ekleyin..
 
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Modalı hocam çok özürdilerim. Tamamlamadığım için hata veriyomuş. End Sub yazdım halloldu fakat şimdide

Me.txtToplamDiger=rs(7)

satırında hata veriyo...
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Yüzme alanını eklemeyi unutmuşum. strSQL satırını şöyle değiştirin:

Kod:
strSQL = "SELECT Sum(Odeme.Aidat) AS ToplaAidat, Sum(Odeme.Kırtasiye) AS ToplaKırtasiye, Sum(Odeme.Servis) AS ToplaServis, Sum(Odeme.[Folk/Bale/]) AS [ToplaFolk/Bale/], Sum(Odeme.Tiyatro) AS ToplaTiyatro, Sum(Odeme.Kostüm) AS ToplaKostüm, Sum(Odeme.Yüzme) AS ToplaYüzme, Sum(Odeme.Diğer) AS ToplaDiğer FROM Odeme;"
 
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Çok teşekkür ederim sayın modalı Allah razı olsun sizden ve yardımlarını esirgemeyen tüm hocalarımızdan. Saolun :) :)
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,552
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
istek

Sn. TUGrasim;

Kodları bir türlü ilgili sayfaya kopyalayamadım. Dosyanın en son halini rica etsem, yükleyebilirmisin? Teşekkürler.
 
Son düzenleme:
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Sn. TUGrasim;

Kodları bir türlü ilgili sayfaya kopyalayamadım. Dosyanın en son halini rica etsem, yükleyebilirmisin? Teşekkürler.
Kolay gelsin assenucler...


Sayın modalı;
Bir şey dikkatimi çekti alanların biçim formatlarında TL kullanıyorsunuz başlarına Y ekleyerek YTL yapın daha düzgün görüneceklerdir.
Bilmişlik taslayıp nasılsa bulurum dedim ama bulamadım :( Nereden ekleyebileceğimi söylermisiniz?
 
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Ödeme formunda ki genel toplamlar yapıldı fakat, programı bir dahaki eğitim yılı içinde kullandığımızda genel toplamlar birikecek, sadece genel toplamlar değil mezun olan yada ayrılan öğrencilerde öyle. Eğitim yılı diye bir güncelleme sorgusu oluşturdum. Öğrenci listesini eğitim yılına göre sıralattım ki karışıklık olmasın her yeni eğitim yılı üstte gözüksün diye. Tabii raporda o eğitim yılına ait öğrencileri listeliyo.

Benim sorunum Ödeme formunda toplamı grup olarak almak istiyorum. Örneğin açılan kutusudan eğitim öğretim yılını seçtiğimde ilgili metin kutularının o eğitim yılına ait toplamını görmek istiyorum ama malumunuz içinden çıkamayacağım bir durum.

ÖDEME FORMUnda EĞİTİM ÖĞRETİM YILI TOPLAM sekmesinde ki açılan kutudan eğitim yılını seçtiğim zaman ilgili kutulara o yılın toplamını aldırabilirmiyim. İlgili metin kutularını da textopaidat, textopkırtasiye, textopservis, textopfolkbale, textoptiyatro, textopkostum, textopyuzme, textopdiğer olarak adlandırdım.

İsteğime yardımcı olacak bir kod varsa yazarsanız sevinirim.
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Sayın TUGRasim
Modalı'nın dediği şey şöyle yapılıyor. Mesela Ödeme formunuzda para değerleri yazan alanları çift tıkladığınızda karşınıza çıkan pencerede biçim sekmesine tıklarsanız orada en üstte biçim satırının karşısında "para birimi" ibaresini göreceksiniz. Orayı silerek
#.##0,00" YTL";-#.##0,00" YTL"
ibaresini yazarsanız (tırnak dahil) o alandaki para biriminin YTL yazıldığını göreceksiniz. Kolay gelsin.
 
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Sayın demiral teşekkür ederim sayenizde düzelttim onuda.

Eğitim yıllarına göre toplam alabilmem için hocalarımın yardımlarını bekliyorum...
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Merhaba;

Öğrenciler formundaki 307 isimli açılan kutunuzun kayıt kaynağın sadece "eğitim öğretim yılı adı" nı seçin tek alan yani..
"egtyılı" sorgusunda da ölçüt olarak "eğitim öğretim yılı adı" na
[Forms]![Öğrenciler]![Açılan Kutu307]

ekleyin diğer alandakini silin.. Gayet güzel çalışıyor...
 
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Sayın beab ben ödeme formunda içinden çıkmadığım bir durumu da sormuştum :(
Mumkunse tabii. En azından bu yönde bir fikir verirseniz sevinirm...
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Merhaba;
Anladığım, anlayabildiğim kadarıyla sorunuzun çözümü çok zor değil ama o kadar karışık bir düzen var ki neyin ne olduğunu anlamak sorunu çözmekten daha zor. Bence sadece ilgili soruya ait bir form ve tablo ya da sorgu bırakın makro,referans pencere gizleme bunları sonra ekleyin.
Bu arada haklısınız önceki cevabımda sorunuzu dikkatli okumamışım. Öğrenci Ödeme diye öğrenciler formuna takılmışım.Kusura bakmayın..
 
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Sayın beab05 bu konuda yeterli bilgi sahibi olamamdan dolayı çalışmada buyuk karışıklıklar oldugunun farkındayım. Öyleki bazen kendim bile çıkamıyorum içinden. Maruz göreceğinizi umuyorum.

İki sorunumdan bir tanesi;
Bir sorgu oluşturdum ve o sorgudan altform oluşturup o şekilde eğitim yıllarına göre toplam aldım. Fakat Ödeme formundaki ilgili sekmeye eklediğim açılan kutuyu çalıştıramadım. Eğitim yılları açılan kutuda listeleniyor. Hatta varsayılanada 2007 2008 yaptım ki direk o öğretim yılının bilgileri gelsin hemde formun açılışında parametre değeri istemesin diye. Ama ikinci eğitim yılını seçtiğimde alt formda veriler değişmiyor.

Diğre bir sorunum da formun açılışı ile ilgili. Formun açılışını başlangıçtan ana form yaptığım zaman öğrenciler formuna geçtikten sonra raporlamalar açılmıyor. Ama öğrenci formu yaparsam açılışı ozaman raporlamalar gözüküyor. Yani ana formu açtığım zaman raporlamalarda bir sorun çıkıyor. Düzeltemedim.

İlgilenip fikir verirseniz sevinirm...
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Merhaba;

İnanın bu kadar karışık bir düzen görmemiştim. Ödeme formundaki istediklerinizi yaptım döneme göre veriler geliyor ve toplamlar alınıyor. Toplam içinse sadece "aidat" için yaptım, gerisini siz yaparsınız. Açılan kutudan dönem seçince aidat toplamına bi kere tıklayın o şekilde görünüyor bende toplam. Neden böyle yaptı anlamadım, belki sizde yapmaz. Öğrenciler formu içinse düzeltmeyi diğer mesajımda yanlışlıkla da olsa vermiştim. Eğer yeni bir soru soracaksanız lütfen uygulamayı sadeleştirin. Ben şu an boyutu düşürmek için bazı form,sorgu ve tabloları sildim.
 
Katılım
19 Aralık 2006
Mesajlar
44
Excel Vers. ve Dili
ofis 2003 türkçe
Sayın beab çok teşekkür ediyorum bahsettiğiniz aidat bende çalışıyor tıklamadan. Minnettarım...
 
Üst