【发布时间】:2015-09-29 06:00:46
【问题描述】:
我有一个启用宏的 excel 文件,用于将数据从 excel 上传到数据库。 excel中有一个按钮可以运行此代码。当我运行代码时,它会弹出一个窗口“选择数据源”。有谁知道如何防止这种情况出现。
谢谢
遗憾的是,作为初学者,我无法提供图片,所以我会解释一下。
单击按钮时。打开一个名为“选择数据源”的窗口,其中包含三个选项 dBASE 文件、Excel 文件、MS Access 数据库。我需要选择其中之一并继续。对我来说,它是 excel,所以我单击它并按 OK。然后它可以让我选择工作簿。有没有办法预先做这个,这样我就看不到这个窗口了。
代码如下所示,就是这个问题。
Sub Collect_campaigns()
Dim qryCampaigns As String
Application.ScreenUpdating = False
qryCampaigns = "SELECT * FROM test.tbl_test;"
Worksheets("Campaigns").Visible = True
Sheets("Campaigns").Select
Range("A:F").Select
Selection.Clear
Range("A1").Select
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
"ODBC;DSN=TEST_DATASOURCE;", Destination:=Range("$A$1")).QueryTable
.CommandText = qryCampaigns
.Refresh BackgroundQuery:=False
End With
【问题讨论】:
-
您需要提供更多详细信息。
-
我会在上面补充一点
-
我错过了我现在得到 -2 的东西吗?这是我能用语言解释的最好的了。这个系统不允许我上传我认为需要不是一个好主意的图片,因为初学者发现很难解释,而且它只会使帖子变长并且视觉表现更好。
-
@ArranRai,在运行宏之前,按键盘上的 Alt+F11,这将打开 Visual Basic 窗口,您可以在其中看到宏的代码。您应该搜索“选择数据源”的代码,然后复制包含它的段并将其粘贴到您的问题下方。没有它,我们就不可能知道宏在后台做了什么。
-
@ArranRai 您看到的窗口是由我们这里没有人看到的自定义代码引起的。如果我们可以看到该代码,我们可以告诉您如何调整它,以便自动选择“工作簿”并且不打开任何窗口。由于您是唯一可以访问工作簿的人,因此您需要找到代码并将其粘贴到此处,以便人们可以帮助您。遵循robotik 的建议将帮助您做到这一点。目前这个问题无法回答。