Abdi Afrilian Fanani ...,
Dalam hal penghitungan, ada 2 fungsi yang bisa digunakan.
1. Sum(nama_field) ==> Menjumlahkan antar record
Contoh tabel t1:
id ni
1 2
2 4
3 4
4 4
5 6
sql = "select sum(ni) from t1"
==> menghasilkan 20
2. Count (nama_field) ==> Menghitung jumlah record
sql = "select count(ni) from t1"
==> menghasilkan 5
Bila ingin melakukan update terhadap tabel, bisa menggunakan misalnya.
Dim db as database
dim sq as string
set db = currentDb
sq = "update t1 set ni=8 where id=5"
'bila nilai berada di form atau pada fungsi tertentu
'nilai id dan ni, bisa diubah seperti ini
'sq = "update t1 set ni=" & ni_baru & " where id=" & id_lama
'perhatikan ni=" & ni_baru & "
'itu dipilih karena type data field ni pada tabel t1 adalah Number
'Bila type datanya Text, harus ditambah upperstrop ('):
'perhatikan ni='" & ni_baru & "'
db.execute = sq
'menutup dan menghilangkan perintah dan memory
db.close
set db = nothing
Tanda upperstrop karena merupakan salah satu bagian dari bahasa VBA, menjadi masalah tersendiri apabila dihadapkan pada data, misalnya Abdul A'la.
baru = Abdul A'la
sq = "update t2 set nama='" & baru & "' where id=5"
===> Akan disampaikan ke mesin seperti ini:
"update t2 set nama='Abdul A'la' where id=5"
==> Menyebabkan error fungsi.
Cara handle terhadap hal tersebut, bisa menggunakan fungsi (diletakkan di module):
Public Function EscapeQuotes(s As String) As String
If s = "" Then
EscapeQuotes = ""
ElseIf Left(s, 1) = "'" Then
EscapeQuotes = "''" & EscapeQuotes(Mid(s, 2))
Else
EscapeQuotes = Left(s, 1) & EscapeQuotes(Mid(s, 2))
End If
End Function
baru = Abdul A'la
sq = "update t2 set nama='" & EscapeQuotes(baru) & "' where id=5"
==>"update t2 set nama='Abdul A''la' where id=5"
Semoga bisa membantu dan memberi semangat.
Hariyanto (Surabaya)
--------------------------------------------
On Sun, 12/1/14, Abdi Afrilian Fanani <abdifanani@gmail.com> wrote:
Subject: [belajar-access] Total & Copy data pada subform pakai VBA
To: belajar-access@yahoogroups.com
Date: Sunday, 12 January, 2014, 1:59 PM
As subject, saya ingin bertanya kepada rekan2 yang
mungkin bisa membantu mengenai kode VBA terkait masalah
ini.
1. saya ingin melakukan total suatu field dengan
nama Subtotal menggunakan VBA agar hasil tersebut di record
di dalam tabel.
2. hasil dari total tersebut, akan terupdate pada
Mainform dengan nama field Total
Apakah ada yang bisa membantu?
Terimakasih
| Reply via web post | Reply to sender | Reply to group | Start a New Topic | Messages in this topic (2) |
Tidak ada komentar:
Posting Komentar