Devirli toplama

Katılım
14 Aralık 2006
Mesajlar
102
Excel Vers. ve Dili
2007-Türkçe
Merhaba, yapmış olduğum form üzerinde devirli toplam aldırmak istiyorum. Şöyle ki sonuç=(alan1+alan2+alan3)-(alan4) sonuçdaki değeri kalan olarak yazdırıyorum formu değiştirmeden 2.kayda geçtiğimde 1.kayıttaki kalanı 2. kayıtta da kalan olarak verecek ve 2.kayıtta işlem yapıldığında 2.kaydın sonucunu kalanla toplayacak ve kalan olarak verecek.
 
Katılım
14 Aralık 2006
Mesajlar
102
Excel Vers. ve Dili
2007-Türkçe
Sn, Modalı

Teşekkür ederim beni yönlendirmişsiniz ama ben henüz access de yeni sayılırım. Bundan dolayı bu linkte açıkçası ne anlatılmak istendiğini anlamadım.Yani ben hesaplatmak istediğim alanları o linkteki belirtilen 'keyname' diye ayrılan kısımlara yaacağım da hangisini nereye yazacağımı bilmiyorum. Üzgünüm. Ama yardımızı bekliyorum. Şimdiden teşekkür ederim. Linkteki kodları da yazdım.
Function RunSum (F As Form, KeyName As String, KeyValue, _
FieldToSum As String)
'***********************************************************
' FUNCTION: RunSum()
' PURPOSE: Compute a running sum on a form.
' PARAMETERS:
' F - The form containing the previous value to
' retrieve.
' KeyName - The name of the form's unique key field.
' KeyValue - The current record's key value.
' FieldToSum - The name of the field in the previous
' record containing the value to retrieve.
' RETURNS: A running sum of the field FieldToSum.
' EXAMPLE: =RunSum(Form,"ID",[ID],"Amount")
'***********************************************************
Dim RS As DAO.Recordset
Dim Result

On Error GoTo Err_RunSum

' Get the form Recordset.
Set RS = F.RecordsetClone

' Find the current record.
Select Case RS.Fields(KeyName).Type
' Find using numeric data type key value?
Case DB_INTEGER, DB_LONG, DB_CURRENCY, _
DB_SINGLE, DB_DOUBLE, DB_BYTE
RS.FindFirst "[" & KeyName & "] = " & KeyValue
' Find using date data type key value?
Case DB_DATE
RS.FindFirst "[" & KeyName & "] = #" & KeyValue & "#"
' Find using text data type key value?
Case DB_TEXT
RS.FindFirst "[" & KeyName & "] = '" & KeyValue & "'"
Case Else
MsgBox "ERROR: Invalid key field data type!"
GoTo Bye_RunSum
End Select

' Compute the running sum.
Do Until RS.BOF
Result = Result + RS(FieldToSum)

' Move to the previous record.
RS.MovePrevious
Loop

Bye_RunSum:
RunSum = Result
Exit Function

Err_RunSum:
Resume Bye_RunSum

End Function
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın murat06,

Örneğinizi ekleyin ona göre çözüm bulalım.

iyi çalışmalar:)
 
Katılım
14 Aralık 2006
Mesajlar
102
Excel Vers. ve Dili
2007-Türkçe
Sn, Modalı örnek ekte

Bu gönderdiğim örnekte kalan kısmı devirli olarak toplama yapacak. Yani ilk kayıtta sonuçtaki rakam yazılacak 2.ve sonraki kayıtlarda 1.kayıttaki kalan +2. kayıttaki sonucu toplayıp kalan kısmına yazacak. bu şekilde hep devir yaparak gidecek.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın murat06,

Çok kez değindim ama tekrar edeceğim. Tablolara tablo alanlarından hesaplanan alanların konması hem gereksiz, hem dosyayı şişirir hem de hatalara neden olur. Bu çeşit alanlar, sorgularda , raporlarda veya formlarda hesaplanırlar ve kullanılırlar.

İyi çalışmalar:)
 
Katılım
14 Aralık 2006
Mesajlar
102
Excel Vers. ve Dili
2007-Türkçe
Sn, Modalı

Gönderdiğim örneği yapmışsınız çok teşekkür ederim.
"Tablolara tablo alanlarından hesaplanan alanların konması hem gereksiz, hem dosyayı şişirir hem de hatalara neden olur. Bu çeşit alanlar, sorgularda , raporlarda veya formlarda hesaplanırlar ve kullanılırlar," demişsiniz bu konuda yardımcı olabilirmisiniz. Ben formumda hesaplamaları genellikle kodlarla yapmaya çalışıyorum. Hesaplanan kısmıda tabloya yazdırıyorum.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
:) Sayın murat06,

Demek istediğim tablolarda hesaplanan alanların yer almaması. Doğru kodlarla hesaplanan veriler tablolara kaydedilmezler, formlarda raporlarda veya sorgularda yer alırlar.

İyi çalışmalar
 
Üst