我正在尝试从日常用户和excel工作簿中收集数据。 我有一个用工作簿打开的用户表单,但是一旦收集到数据,我就不需要用户再次看到该用户表单。
表单将收集的数据保存在访问数据库中。发送到数据库的数据的一部分是使用Environ(“USERNAME”)
抓取的用户用户名我想要做的是让excel获取用户名,然后查询数据库以获得匹配。 如果匹配则跳过表单如果不匹配则打开表单。
非常感谢任何帮助这样做的建议或关于如何实现同样的建议。
答案 0 :(得分:0)
因为您没有说明问题究竟在哪里,也没有发布任何代码我只能希望我的答案符合您的要求......
我们假设您将用户名放在字符串中,然后您可以调用它:
function check_username_already_there(username_str as string) as boolean
check_username_already_there = false 'set back
Dim dbe As Object ' As DAO.DBEngine
Dim db As Object ' As DAO.Database
Dim dbfile As String
Dim sSQL As String
dbfile = "\\yourpath\yourfile.accdb" 'put the full path here
Set dbe = CreateObject("DAO.DBEngine.120") ' if Acc2007 or higher
Set db = dbe.OpenDatabase(dbfile)
sSQL = "SELECT yourtab.Konto From yourtab WHERE (((yourtab.username_in_tab)='" & username_str & "'));"
Set rs = db.OpenRecordset(sSQL)
If not rs.EOF Then check_username_already_there = true
set dbe = nothing
set db = nothing
set rs = nothing
end function
如果你回来check_username_already_there = true,用户名已经存在,你可以跳过表格。
我希望这有帮助, 最大