Cara membuat dua fungsi untuk menghitung usia dalam bulan dan tahun di Microsoft Access

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 290190 - Melihat produk di mana artikel ini berlaku.
Lanjutan: Memerlukan ahli coding, interoperabilitas, dan multiuser keterampilan.

Artikel ini berlaku untuk Microsoft Office Access database (.accdb dan .mdb) dan Microsoft Access proyek (.apd).

Untuk Microsoft Access Versi 2000 artikel ini, lihat 210522.
Untuk versi Microsoft Access 97 artikel ini, Lihat 290190.
Perbesar semua | Perkecil semua

Pada Halaman ini

RINGKASAN

Artikel ini menunjukkan kepada Anda bagaimana untuk membuat dua fungsi yang Anda dapat digunakan untuk menghitung usia seseorang atau sesuatu berdasarkan tertentu tanggal.

Catatan Anda dapat melihat demonstrasi teknik yang digunakan dalam hal ini Artikel dalam sampel file Qrysmp00.exe. Untuk informasi tambahan tentang cara mendapatkan file sampel ini, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
207626ACC2000: Access 2000 sampel permintaan tersedia di Pusat Download

INFORMASI LEBIH LANJUT

Membuat fungsi

Ketik atau tempel kode berikut dalam modul:
'==========================================================
' General Declaration
'==========================================================
Option Explicit

'*************************************************************
' FUNCTION NAME: Age()
'
' PURPOSE:
'    Calculates age in years from a specified date to today's date.
'
' INPUT PARAMETERS:
'    StartDate: The beginning date (for example, a birth date).
'
' RETURN
'    Age in years.
'
'*************************************************************
Function Age (varBirthDate As Variant) As Integer
   Dim varAge As Variant


   If IsNull(varBirthdate) then Age = 0: Exit Function

   varAge = DateDiff("yyyy", varBirthDate, Now)
   If Date < DateSerial(Year(Now), Month(varBirthDate), _
                        Day(varBirthDate)) Then
      varAge = varAge - 1
   End If
   Age = CInt(varAge)
End Function

'*************************************************************
' FUNCTION NAME: AgeMonths()
'
' PURPOSE:
'  Compliments the Age() function by calculating the number of months
'  that have expired since the last month supplied by the specified date.
'  If the specified date is a birthday, the function returns the number of
'    months since the last birthday.
'
' INPUT PARAMETERS:
'    StartDate: The beginning date (for example, a birthday).
'
' RETURN
'    Months since the last birthday.
'*************************************************************
Function AgeMonths(ByVal StartDate As String) As Integer

   Dim tAge As Double
   tAge = (DateDiff("m", StartDate, Now))
   If (DatePart("d", StartDate) > DatePart("d", Now)) Then
      tAge = tAge - 1
   End If
   If tAge < 0 Then
      tAge = tAge + 1
   End If

   AgeMonths = CInt(tAge Mod 12)

End Function
				

Pengujian Age() dan AgeMonths() fungsi

Untuk menguji fungsi Age() dan AgeMonths(), ikuti langkah berikut.

PENTING: Langkah-langkah berikut meminta Anda untuk mengubah tanggal pada komputer Anda. Pastikan bahwa Anda menyelesaikan langkah 6 untuk me-reset tanggal untuk tanggal saat ini.
  1. Dengan menggunakan Tanggal/waktu alat pada Panel kontrol, membuat catatan tanggal, dan kemudian menetapkan tanggal 3 Juni 2001.
  2. Membuka modul atau membuat yang baru.
  3. Pada Lihat menu, klik Jendela segera.
  4. Menganggap teman Anda tanggal lahir adalah 15 November 1967 dan hari ini adalah 3 Juni 2001. Ketik baris berikut di jendela segera, dan kemudian tekan ENTER:
    ?Age("11/15/67")
    						
    Perhatikan bahwa Microsoft Access menanggapi dengan nilai 33 (tahun).
  5. Ketik baris berikut, dan kemudian tekan ENTER:
    ?AgeMonths("11/15/67")
    						
    Perhatikan bahwa Microsoft Access menanggapi dengan nilai 6, menunjukkan bahwa enam bulan telah berlalu sejak ulang tahun terakhir orang ini. Teman Anda adalah 33 tahun dan enam bulan.
  6. Dengan menggunakan Tanggal/waktu alat pada Panel kontrol, reset tanggal saat ini tanggal yang Anda catat di langkah 1.

Menggunakan Age() dan AgeMonths() fungsi

Prosedur berikut menjelaskan cara untuk menandai pesanan lama menempatkan nilai usia di kontrol baru.
  1. Dalam database contoh Northwind.mdb, ketik Age() dan AgeMonth() fungsi dalam modul baru.
  2. Membuka formulir pesanan dalam desain tampilan dan menambahkan teks terikat kotak kontrol.
  3. Ketik baris berikut di ControlSource properti kotak teks baru kontrol:
    =Age([OrderDate]) & "yrs" & AgeMonths([OrderDate]) & "Mo"
  4. Melihat bentuk dalam bentuk tampilan. Perhatikan bahwa usia urutan akan ditampilkan di kotak teks baru kontrol.

REFERENSI

Untuk informasi lebih lanjut tentang tanggal perbedaan, di Editor Visual Basic, klik Microsoft Visual Basic bantuan pada Bantuan menu, jenis datediff fungsi di kantor asisten atau jawaban Wizard, dan kemudian klik Mencari untuk melihat topik.

Properti

ID Artikel: 290190 - Kajian Terakhir: 23 September 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Office Access 2007
  • Microsoft Access 2002 Standard Edition
Kata kunci: 
kbdatetime kbfunctions kbvba kbprogramming kbhowto kbmt KB290190 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:290190

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com