Lam Nal,
Mungkin yang dimaksud adalah bila memasukan tanggal yang salah muncul pesan, begitu? Kalo ya, mungkin ini bisa mbantu :
Dim xtgl as String
Private Sub dTglAkhir_KeyPress(Keyascii As Integer)
If Keyascii = 13 Then
On Error GoTo Salahtanggal
xtgl = DateValue(dTglAwal.Value) + 0
Posting.SetFocus
Exit Sub
Salahtanggal:
Beep
MsgBox "Tanggal yang anda buat salah ", vbInformation, "Pesan"
dTglAkhir.SetFocus
End If
End Sub
NB : saya pake TDBDate (dtglawal) ocx tambahan dari apex, and it's works
If Keyascii = 13 Then
On Error GoTo Salahtanggal
xtgl = DateValue(dTglAwal.Value) + 0
Posting.SetFocus
Exit Sub
Salahtanggal:
Beep
MsgBox "Tanggal yang anda buat salah ", vbInformation, "Pesan"
dTglAkhir.SetFocus
End If
End Sub
NB : saya pake TDBDate (dtglawal) ocx tambahan dari apex, and it's works
Semoga mbantu, sukses
ERIS RISO <[EMAIL PROTECTED]> wrote:
ERIS RISO <[EMAIL PROTECTED]> wrote:
Terima kasih banyak mas Arief, berdasarkan penjelasan yang mas berikan saya mendapatkan logika seperti ini (sharing juga bagi rekan-rekan yang lain)dim cekTanggal, tempTgl as string, tanggal as datedim cTgl,cBln,cThn as Integerctgl=left(txttgl.text,2) cbln=mid(txttgl.text,3,2) cthn=right(txttgl.text,4) temptgl=texttgl.text 'menyimpan nilai yg saya input tanggal=dateserial(cthn,cbln, ctgl) 'mengubah ke bentuk tanggal sesuai sistem misal---->12/03/2006 simpan dalam variabel cektanggal=left(tanggal,2) & mid(tanggal, 4,2) & right(tanggal, 4) 'mengubah lagi hasil dateserial ke nilai asli (yg diinput) simpan dalam variabel if len(texttgl.text) < 8 or len(txttgl.text) > 8 then 'membatasi karakter yg diinput harus berjumlah 8 msgbox("Digit tanggal tidak valid")txttgl.setfocuselseif temptgl <> cekTanggal then 'menguji apakah nilai asli dan hasil dateserial berbedamsgbox("Tanggal atau bulan tidak valid")txttgl.setfocuselse 'jika tanggal valid rubah txttgl.text menjadi format hasil dari dateserialtxttgl.text=tanggal end ifsetelah saya coba berhasil, apakah ada logika yang lebih sederhana dari yang saya buat Mas?terima kasih sekali lagi
From: Programmer-VB@yahoogroups. com [mailto:Programmer- [EMAIL PROTECTED] com] On Behalf Of Arief Wibowo
Sent: 03 Oktober 2006 21:45
To: Programmer-VB@yahoogroups. com
Subject: [Programmer-VB] Re: Tanya Validasi Tanggal --- In Programmer-VB@yahoogroups. , "ERIS RISO" <[EMAIL PROTECTED]> wrote:com
>
> Saya punya textbox untuk input tanggal, karena yg diinput misalnya tgl
> 03/10/2006 cukup 03102006, validasi untuk ini sudah berhasil
> Nah bagaimana cara membuat validasi untuk menentukan bahwa tanggal yg
> diinput itu adalah merupakan format tanggal yang benar baik tanggal
maupun
> bulan
> misalnya user mengetikan 32012006 yang nantinya menjadi 32/01/2006 akan
> menampilkan pesan kesalahan bahwa tanggal salah karena tidak ada
tanggal 32
> pada bulan 01, atau sebaliknya misalnya 01132006 menjadi 01/13/2006
salah
> karena tidak ada bulan ke-13 atau kesalahan kedua-duanya 32/13/2006
(bulan
> dan tanggal)
> Format tanggal saya adalah Indonesia (dd/mm/yyyy)
> Terima kasih
>
Kalo pake VB, cukup lakukan pemotongan string.
Anda mengatakan bahwa format tanggal adalah Indonesia dd/mm/yyyy
Berarti:
* tgl: 2 karakter pertama (1-2) --> Tgl=Left(InputTanggal,2)
* bln: 2 karakter berikutnya (3-4) --> Bln=Mid(InputTanggal,3,2)
* thn: 4 karakter terakhir (5-8) --> Thn=Right(InputTanggal,4)
Nah, berdasarkan informasi diatas, kita dapat melakukan pengecekan
batas terhadap tgl dan bln (dan thn, jk kabisat).
Atau jika Anda lebih terbiasa jika menggunakan format tanggal, Anda
juga bisa menyimpan info tsb dlm variable bertipe date.
Pakai fungsi DateSerial --> Tanggal=DateSerial(Thn,Bln,Tgl)
Sifat dateserial, jika menerima input tanggal yang tidak valid maka
dateserial akan memajukan bulan dan tanggal supaya menjadi benar.
Contoh:
* 32/01/2006 --> 01/02/2006
* 01/13/2006 --> 01/07/2006
Karena itu, Anda harus melakukan pengecekan apakah hasil DateSerial
masih sama dengan InputTanggal.
Contoh caranya, "kembalikan" hasil DateSerial menjadi bentuk ddmmyyy.
Pakai fungsi Day Month Year --> Day(Tanggal) & Month(Tanggal) &
Year(Tanggal).
Lalu bandingkan Tanggal dengan InputTanggal.
Kuhrp posting ini berguna bagi Anda.
Terima kasih!
Salam,
<ariefwt-Kontingen OSN V 2006 Sumatera Utara>
Regards
Gege Nugroho
Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2ยข/min or less. __._,_.___
Wahana Programmer Groups Links
<*> Untuk mengunjungi sponsor milis ini, klik link berikut:
http://wahanaprogrammer.net
<*> Untuk menghubungi owner milis ini, kirim email ke:
[EMAIL PROTECTED]
<*> Konsultasi pemrogramman bisa chat disini:
Yahoo! Messenger: wahanaprogrammer
![]()
SPONSORED LINKS
Indonesia phone card Programmer Indonesia tour Indonesia travel Indonesia flower
Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe
__,_._,___
- Jawaban Tambahan [Programmer-VB] Tanya Validasi Tanggal Gege Nugroho
Kirim email ke