【发布时间】:2012-10-10 21:17:01
【问题描述】:
我有 2 张纸,其中有 2 个按钮 Browsefile 和 Openfile 和一个文本框 TextBox1。我使用Browsefile 按钮选择要打开的文件并使用Openfile 按钮打开工作簿。
问题是,它会在新工作簿中打开,而不是将其添加到我的活动工作簿中。我该如何解决这个问题?
Public fileStr As String
Sub GetOpenFile()
fileStr = Application.GetOpenFilename()
Worksheets("Sheet1").TextBox1.Value = fileStr
End Sub
Sub Paste_Click()
Dim wbk1 As Workbook, wbk2 As Workbook
Set wbk1 = ActiveWorkbook
Set wbk2 = Workbooks.Add(fileStr)
wbk2.Sheets(1).Cells.Copy wbk1.Worksheets("Sheet2").Cells(1, 1)
End Sub
【问题讨论】:
-
所以您希望它在 Sheet2 中打开而不是在新工作簿中打开?
-
是的,这就是我真正想要它做的事情
-
您无法将
XLS(X(M))格式的文件作为选项卡直接打开到另一个工作簿中,因此如果您的文件位于XLS(X(M))中,那么您对其进行编码的方式是唯一的方法。如果文件为CSV或TXT格式,则可以使用DataConnections将数据“查询”到`wkb1'的工作表中。 -
如果您的文件是
XLS(X(M))格式,您还可以在 wbk2.Sheets(1).Cells.Copy ...` 行之后添加wkb2.Close False。然后第二个工作簿将关闭,您不必担心它会打开。