【问题标题】:Multiple Users Updating Excel Sheet - Maybe Disconnected ADO Recordset?多个用户更新 Excel 表 - 可能断开 ADO 记录集?
【发布时间】:2014-10-31 18:43:13
【问题描述】:

我有以下设置为共享的 Excel 工作表,团队内的多个用户正在访问:

Sheet http://im47.gulfup.com/xQTWqT.png

由于工作表经常用新记录更新,我设置了以下共享选项,工作表正在保存,其他用户更改每五分钟更新一次(您可以设置的最小值):

Options http://im47.gulfup.com/SBX4jf.png

当 2 个用户尝试在 5 分钟内同时更新数据库时会出现问题,然后 excel 将提示他们此单元格已包含数据并提供解决更改。

有什么办法可以避免这种情况发生。

我已经搜索并遇到了断开连接的 ADO 记录集,但我不太清楚它们如何在我的场景中提供帮助。

我们将不胜感激。

【问题讨论】:

  • 您在问题中标记了 vba,但我不明白这与 vba 有何关系。
  • @bp_ 你不会知道的。

标签: vba excel


【解决方案1】:

没关系,我想通了:

在一个工作簿中创建一个用户输入表单,并创建另一个工作簿来存储数据(我们称之为 Book1)。

接下来是代码:

    Private Sub CommandButton1_Click()

'  Add the ActiveX Object Library
'  Tools ---> References ---> Microsoft ActiveX Data Objects 2.5 Library

    Dim cn As ADODB.Connection
    Set cn = New ADODB.Connection
    With cn
        .Provider = "Microsoft.Jet.OLEDB.4.0"
        .ConnectionString = "Data Source=C:\Users\Name\Downloads\Book1.xls;" & _
    "Extended Properties=Excel 8.0;"
        .Open
    End With

    strSQL = "INSERT INTO [Sheet1$](Name, Age, Nationality, Amount) values('" & UserForm1.TextBox1.Value & "','" & UserForm1.TextBox2.Value & "','" & UserForm1.TextBox3.Value & "','" & UserForm1.TextBox4.Value & "')"
    cn.Execute strSQL

    End Sub

【讨论】:

    猜你喜欢
    • 2015-11-08
    • 1970-01-01
    • 1970-01-01
    • 2011-08-04
    • 2012-04-19
    • 1970-01-01
    • 2012-05-27
    • 2023-03-09
    • 1970-01-01
    相关资源
    最近更新 更多