Dear All,
Terima kasih Mas Edy atas bantuannya . . . saya sudah coba dan hasilnya OK
banget.
Tapi ada sedikit kendala yang saya hadapi, dimana kalau Date nya itu dientry
manual, misalnya fieldnya = Tgl_Transaksi, dan sudah saya coba rubah jadi :
strBulan = Format(Month(Tgl_transaksi), "00")
strTahun = Format(Year(Tgl_transaksi), "00")
command diatas benar gak ya ?
Pada setiap mau new record (click buuton Add Record) selalu muncul message
error " Invalid use of Null", mohon pencerahannya.
Wassalam,
Idwan
Edy WIYONO <[EMAIL PROTECTED]> wrote:
Saya coba untuk membantu,
asumsi:
tblOrder : nama tabel tempat menaruh NoUrut tsb.
NoUrut : nama field
Private Sub cmdNew_Click()
On Error GoTo Err_cmdNew_Click
DoCmd.GoToRecord , , acNewRec
'Format BNT/10/2007/0001
'Misal skrg bulan 10/2007 - cek apakah ada nomor dgn format BNT/10/2007
'Kalo tdk ada nomor mulai dengan BNT/10/2007/0001, kalo sdh ada no tsb,
tinggal dicari
'4 digit terakhir di Integer-kan dan ditambah 1
'kalo bulan berganti jadi 11/2007 maka nomor akan reset kembali ke nomor 1
strBulan = Format(Month(Date), "00")
strTahun = Format(Year(Date), "0000")
strKriteria = "BNT/" & strBulan & "/" & strTahun & "/"
If DCount("NoUrut", "tblOrder", "[NoUrut] Like '" & strKriteria & "*'") = 0
Then
intNoUrut = 1
Else
intNoUrutTertinggi = CInt(Right(DMax("NoUrut", "tblOrder", "[NoUrut] Like
'" & strKriteria & "*'"), 4))
intNoUrut = intNoUrutTertinggi + 1
End If
strNoUrut = Format(intNoUrut, "0000")
NoUrut.Value = strKriteria & "/" & strNoUrut
Exit_cmdNew_Click:
Exit Sub
Err_cmdNew_Click:
MsgBox Err.Description
Resume Exit_cmdNew_Click
End Sub
Kalo mau dibikin fungsi dan ditaruh di Module, maka kita modifikasi sedikit
sbb:
Private Sub cmdNew_Click()
On Error GoTo Err_cmdNew_Click
DoCmd.GoToRecord , , acNewRec
strNamaField = "NoUrut"
strNamaTabel = "tblOrder"
NoUrut.Value = BikinNoUrut(strNamaField, strNamaTabel)
Exit_cmdNew_Click:
Exit Sub
Err_cmdNew_Click:
MsgBox Err.Description
Resume Exit_cmdNew_Click
End Sub
Ini ditaruh di Module:
Function BikinNoUrut(ByVal NamaField As String, ByVal NamaTabel As String) As
String
strBulan = Format(Month(Date), "00")
strTahun = Format(Year(Date), "0000")
strKriteria = "BNT/" & strBulan & "/" & strTahun & "/"
If DCount(NamaField, NamaTabel, "[" & NamaField & "] Like '" & strKriteria &
"*'") = 0 Then
intNoUrut = 1
Else
intNoUrutTertinggi = CInt(Right(DMax(NamaField, NamaTabel, "[" & NamaField
& "] Like '" & strKriteria & "*'"), 4))
intNoUrut = intNoUrutTertinggi + 1
End If
strNoUrut = Format(intNoUrut, "0000")
BikinNoUrut = strKriteria & "/" & strNoUrut
End Function
----- Original Message -----
From: sarma diaz
To: [email protected]
Sent: Friday, October 19, 2007 14:47
Subject: [belajar-access] Membuat nomer urut
Selamat Idul Fitri rekan access sekalian. Mohon Maaf lahir bathin.
Saya ada pertanyaan yang telah saya geluti selama lebaran ini.
Pembuatan no urut berdasarkan tgl system komputer, BNT/X/2007/0001
BNT - ini nilai default
X - ini bulan dari tanggal system komputer
2007 - tahun dari system
0001 - no. urut dokumen.
Gimana cara pembuatan modul/VBA untuk event on click yang sesuai dengan
keinginan saya ini.
oh ya kapan kita kopdarnya...
Terima kasih rekan sekalian.
---------------------------------
Bergabunglah dengan orang-orang yang berwawasan, di bidang Anda di Yahoo!
Answers