Excel到SQL远程更新到特定的用户

我有一个服务器上的SQL表,我已经将它导入到Excel电子表格中,当我将这个文件发送给也有权访问该服务器的其他人时,他们能够看到数据但无法刷新数据。 它给文件不可用的错误。 请让我知道如何让这些用户也可以在方便的时候刷新数据。

第二部分是如果上述任何用户在Excel电子表格中进行更改,我们是否可以dynamic更新SQL表格? PS有19个表格,每个表格有20列,所以OPENROW对我来说不是一个可行的select。 任何帮助或指针,高度赞赏。

使用savetodb插件的Excel

http://www.savetodb.com/

在excel中创buildbutton来加载数据库并保存对数据库的更改

 Dim addIn As COMAddIn Dim addInObj As Object Set addIn = Application.COMAddIns("SaveToDB") Set addInObj = addIn.Object addInObj.Save 

我多次使用它,为多个人。 一个谨慎的话,任何时候你给这样的访问一个数据库中的表,你给人的能力,表和dbs了。 有一个好的备份计划,方便。

你(或数据库pipe理员)将需要给将要更新这些表到数据库的用户写访问权限。

如果您正在尝试更新基于Excel的SQL Server中的logging,您将会感到失望。 你想要的是使用MS Access创build一个ADP项目或MDB应用程序。 在这里看到: 访问数据项目的优点和缺点(与SQL Server后端的MS Access前端)

您可以为Excel编写一个插件/插件,用于侦听为单元格编辑开始/结束触发的事件。 您需要跟踪用户所在的标签,他们编辑的单元格,然后通过插件应用程序将更新发送到SQL。

我不再能够访问源代码,但是如果这是您想要追求的,需要帮助的入门知识,请告诉我,我会在细胞事件的细节中find一些链接。

现在,我拥有的是Office插件的MSDN链接

更新

我做了一个快速search,发现这些链接让你开始:

  • 创build你的第一个Excel地址
  • select更改在工作表上的事件
  • 单元格编辑事件

一旦你有一个插件,你可以跟踪单元格编辑的事件,那么你只需要编写逻辑来找出在电子表格中更新什么。

有一件事要注意:每个编辑这个电子表格和更新数据库的用户都需要安装你的这个解决scheme的插件,或者真正的解决scheme来工作。 在Excel中没有自动化的方法来做到这一点,我知道。

对于问题1:你的Excel电子表格是否有macros? (我会问,但我的代表太低)

如果是这样,则需要另存为“Excelmacros启用的工作簿”以包含您编写的macros。