PDA

View Full Version : سوال: درخواست راهنمایی VBA



sandavood
چهارشنبه 29 مهر 1388, 21:34 عصر
سلام من یه برنامه نوشتم به شکل زیر
Private Sub Command0_Click()
Dim db As Database
Dim re As Recordset
Dim wor As Workspace
Set db = CurrentDb()
Set re = db.OpenRecordset("table1")
re.Fields("exitdate").Value = Date
End Sub
Private Sub Form_Open(Cancel As Integer)
irandat (1)

Me.Text5 = g_tar
End Sub
Private Sub Text8_Exit(Cancel As Integer)
Dim d1 As String
irandat (1)
' DoCmd.GoToRecord , , acNewRec
d1 = g_tar
' MsgBox (d1)
Dim db As Database
Dim re As Recordset
Set db = CurrentDb()
Dim cart As String
cart = Me.Text8
Set re = db.OpenRecordset("table1")
're.Filter = "code=" & cart & "and enterdate=" & d1
re.Index = "code"
re.Seek "=", cart, d1
If (re.NoMatch) Then
re.AddNew
re.Fields("enterdate").Value = d1
re.Fields("code").Value = cart
re.Fields("enterhour").Value = Time
re.Update
MsgBox ("ورود ثبت شد")
Beep
End If
'************************************************* ***********
If Not (re.NoMatch) Then
re.Edit
re.Fields("exitdate").Value = d1
re.Fields("exithour").Value = Time
re.Update
MsgBox"(خروج ثبت شد")
Beep
End If
End Sub
مشکل من در قسمت آخر برنامه است. در بعد از re.edit
چه دستوری بنویسیم که چک کند که آیا رکورد خالی است یا نه؟ و در صورت خالی بودن درون آن داده درج کند؟متشکرم

مهدی قربانی
چهارشنبه 29 مهر 1388, 22:27 عصر
سلام


If Not (re.NoMatch) AND IsNull(re.Fields("exitdate"))Then

re.Edit
re.Fields("exitdate").Value = d1
re.Fields("exithour").Value = Time
re.Update
MsgBox"(خروج ثبت شد")
Beep
End If
End Subیا


If Not (re.NoMatch) Then
If IsNull(re.Fields("exitdate"))Then
re.Edit
re.Fields("exitdate").Value = d1
re.Fields("exithour").Value = Time
re.Update
MsgBox"(خروج ثبت شد")
Beep
End If
End If
End Sub