1

我在 form1 中有文本框和命令按钮。

我将在文本框中输入路径

单击命令按钮后,路径位置的工作簿应该打开并且需要需要宏代码,例如复制等

当我尝试使用 . 我收到错误说 file1.xlsx not found 。请帮助

Private Sub CommandButton1_Click()
Set wb1 = Workbooks.Open("file1")
End Sub

Private Sub TextBox1_Change()
Dim file1 As String
file1 = TextBox1.Value
End Sub

Private Sub UserForm_Click()
End Sub
4

1 回答 1

4

上面评论中的建议将带你去你需要去的地方,但如果我可以建议......而不是使用文本框让用户输入名称,请使用 GetOpenFilename 对话框。这样可以确保路径有效且文件实际存在。它还为用户提供了一个漂亮的 GUI,这更像是他们习惯于 File -> Open 对话框的界面。像这样的东西:

Private Sub CommandButton1_Click()

    Dim vnt As Variant

    On Error GoTo ErrorHandler

    vnt = Application.GetOpenFilename("Excel Files (*.xlsx; *.xls; *.xlsm),*.xlsx;*.xls;*.xlsm", 1, "Please select the file to open")

    If vnt = False Then Exit Sub

    Application.Workbooks.Open (vnt)

ExitPoint:

    Exit Sub

ErrorHandler:

    MsgBox "Error " & Err.Number & vbCrLf & Err.Description

    Resume ExitPoint

End Sub
于 2012-12-27T20:24:20.577 回答