【发布时间】:2020-07-13 20:44:55
【问题描述】:
所以我有一个拆分数据库。
dbBackEnd: Lives on the network drive, users don't touch it except through the front ends.
dbFrontEndv1:Stored by me for safekeeping, works fine
dbFrontEndv2:Stored by me for safekeeping, works fine
dbFrontEndv3:Users are interacting with this now, works fine
dbFrontEndv4: Freezes every time I try to do something in VBA
我现在玩了六次的游戏就是这个。
(1) 将 dbFrontEndv3 复制到一个新文件夹并重命名为 dbFrontEndv4。
(2) 打开 dbFrontEndv4 并打开 Form1。如果我现在保存并重新输入它就可以正常工作。
(3) 添加 1 或 2 个命令按钮。触发宏的命令按钮工作正常。 VBA 是这里造成麻烦的。
(4) 编译,没有错误。
(4) 保存退出
(5) 打开dbFrontEndv4,点击表格或其他任何与VBA相关的东西。
(6) 错误:“Microsoft Access 没有响应...”、“Acces 正在重新启动。
在添加和减去 subs、保存、关闭和重新打开之后,这似乎是有问题的。
Private Sub cmdMCF_Click()
Dim appExcel As Excel.Application
Dim wbook As Excel.Workbook
Dim wsheet As Excel.Worksheet
Set appExcel = New Excel.Application
appExcel.Visible = True
Set wbook = appExcel.Workbooks.Open("C:\Path\MyDoc.xlsx")
Set wsheet = wbook.Worksheets("MCF")
With wsheet
.Cells(10, 1).Value = txtCustomerName
.Cells(10, 2).Value = txtCustomerNumber
.Cells(10, 3).Value = txtAddress + " " + txtCity + " " + txtState + " " + txtzip
.Cells(12, 1).Value = txtPhone
.Cells(12, 2).Value = txtEmail
.Cells(12, 3).Value = txtmeasurenumber
.Cells(14, 1).Value = txtStore
.Cells(14, 2).Value = txtAssignedIP
End With
End Sub
如果它只是坐在他的代码中就可以了。但是当我为按钮命名 cmdMCF 时,错误就开始了。
问题是这个子,“复制和过去”,现在正在 dbFrontEndv3 上使用。毫不费力地,我在实现 dbFrontEndv3 时遇到了同样的错误。但后来它工作得很好。
上面代码中的什么可能导致这些随机崩溃?
【问题讨论】:
-
编译会保存一个损坏的前端还是我必须从一个工作的数据库开始?
-
它实际上是 de - 编译,但绝对值得一试。发生这种情况时,我会在开发过程中定期反编译/重新编译我的项目。
标签: ms-access vba ms-access-2013