【发布时间】:2020-07-12 18:36:42
【问题描述】:
我一直在修改下面的代码。一直试图弄清楚如何让它基于 Owner 字段设置用户 ID,该字段基于获取人员网络 ID 的函数。这样就搞定了
我一直遇到的问题是我在 If 语句行上不断收到类型不匹配错误。我还应该提到这是作为表单中的复选框完成的。
代码如下:
Private Sub OkButton_Click()
Dim c As MSForms.Control
Dim StrSQL As String
For Each c In Me.Controls
If TypeOf c Is MSForms.CheckBox Then
If c Then
Select Case c.Name
Case "CheckBox1"
'Monday
Hide
CurrentDb.Execute ("INSERT INTO tblTasks ([Task Name], [Task Description], [Company], [Priority], [Status], [DueDate], [Need Help], [DateCreated], [Owner]) VALUES ('Change Notice', 'Daily Task', '(4) Ginny''s', '(1) Hot!', '0', DateAdd('d',(8-Weekday(Date(),2)) mod 7,Date()), 'No', Date(), '" & Getowner() & "')")
GetUser
Case Else
End Select
End If
End If
Next c
End Sub
Function GetOwner()
GetOwner = Environ("USERNAME")
End Function
Function GetUser()
Dim StrSQL As String
Dim rs1 As DAO.Recordset
Dim rs2 As DAO.Recordset
Set rs1 = CurrentDb.OpenRecordset("tblTasks")
Set rs2 = CurrentDb.OpenRecordset("tblTasks")
rs2.MoveLast
With rs2
If Environ("USERNAME") = "12345" Then
.Edit
![User ID] = "Name"
.Update
End If
End With
rs1.Close 'Close the recordset
Set rs1 = Nothing 'Clean up
rs2.Close 'Close the recordset
Set rs2 = Nothing 'Clean up
Forms![frmTasks].Form.Requery
Forms![frmTasks].Form.Refresh
End Function
任何帮助或推动正确的方向将不胜感激!
【问题讨论】:
-
我已经更新了代码,现在它正在识别用户,但在
[User ID] = "Name"线上出现需要对象的错误我尝试使用"Forms.Tasks.[User ID]"添加对象,但它无法识别即使它在那里。