Office中国论坛/Access中国论坛

标题: 为什么导入数据后数据库窗口都出来了? [打印本页]

作者: 这是我的小号    时间: 2015-1-15 15:08
标题: 为什么导入数据后数据库窗口都出来了?
明明在启动里已经禁止了数据库窗口,为什么导入数据后左侧的表、查询什么的都显示出来了呢?(如图所示)
在2003版本里倒没有这个问题,而2010就有。大家有木有解决办法呀?(禁用shift键也无效,不知道会不会跟里面写的菜单权限代码有关……求解啊!)
  1. Function GetMenu(ByVal UserName As String)
  2. '初始化
  3. Dim cmdCtr As CommandBarControl

  4. CommandBars("menu").Controls(1).Enabled = False
  5. CommandBars("menu").Controls(2).Enabled = False
  6. CommandBars("menu").Controls(3).Enabled = False
  7. CommandBars("menu").Controls(4).Enabled = False
  8.    
  9. If UserName = "采购部" Then
  10.     CommandBars("menu").Controls(1).Enabled = True
  11.     CommandBars("menu").Controls(3).Enabled = True
  12.     CommandBars("menu").Controls(4).Enabled = True
  13. Else
  14.     CommandBars("menu").Controls(2).Enabled = True
  15.     CommandBars("menu").Controls(3).Enabled = True
  16.     CommandBars("menu").Controls(4).Enabled = True
  17. End If
  18. End Function
复制代码





[attach]55437[/attach]



作者: tmtony    时间: 2015-1-15 15:45
要看你导入是使用什么代码才知道
作者: 这是我的小号    时间: 2015-1-15 16:00
tmtony 发表于 2015-1-15 15:45
要看你导入是使用什么代码才知道

导入时,其实我只是重新链接表而已:
  1. Function Relink(ByVal strTblName As String)

  2. Dim strPath As String
  3. On Error Resume Next
  4. strPath = GetFileName(False)
  5. If Len(strPath) > 0 Then
  6.     DoCmd.SetWarnings False
  7.     DoCmd.DeleteObject acTable, strTblName
  8.     DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel9, strTblName, strPath, True
  9. End If
  10. End Function
复制代码

作者: 这是我的小号    时间: 2015-1-15 16:24
有办法解决吗,站长?{:soso_e118:}
作者: 盗梦    时间: 2015-1-15 17:36
这是我的小号 发表于 2015-1-15 16:00
导入时,其实我只是重新链接表而已:

TransferSpreadsheet 会导致数据窗口出来。你可以用ADO读取Excel文件。或者打开Excel对象读取数据
作者: tmtony    时间: 2015-1-15 17:43
DoCmd.TransferSpreadsheet  高版本有这个问题
我们是使用ADO方式 你可搜索一个论坛
作者: zpy2    时间: 2015-1-19 05:32
在设置〉隐藏导航




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3