如何将未打开的Excel文件的内容复制到当前工作表中
怎么编?用什么方法?举个例子~用vba编写一个控件bottun?一按bottun他就从未打开的excel文件内复制p:p列到当前工作表的P:P列?关闭时把当前工作表的P:...
怎么编?用什么方法?举个例子~ 用vba编写一个控件bottun?一按bottun 他就从未打开的excel文件内复制p:p列到当前工作表的P:P列? 关闭时把当前工作表的P:P列清空 遇到了这问题该怎么解决呢?
展开
6个回答
展开全部
假设你的“未打开的Excel文件”的工作簿名是“数据库.xls”,数据在其中的Sheet1当中。
在“另外一个工作簿里”的工作表中的a1输入
=INDEX([数据库.xls]Sheet1!B$2:C$100,MATCH(B2,[数据库.xls]Sheet1!A$2:A$100,0),MATCH(A2,[数据库.xls]Sheet1!B$1:C$1,0))回车。
在“另外一个工作簿里”的工作表中的a1输入
=INDEX([数据库.xls]Sheet1!B$2:C$100,MATCH(B2,[数据库.xls]Sheet1!A$2:A$100,0),MATCH(A2,[数据库.xls]Sheet1!B$1:C$1,0))回车。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用office 2010可以非常容易的实现。在数据下边有一个连接,打开后选择你要连接的文件,它就会自动粘贴到现在这张表。而且还可以设成打开后自动刷新的,非常好用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
'按钮代码
Private Sub CommandButton1_Click()
Dim nPath$, nApp
nPath = "e:\mydoc\text.xlsx" '查询文件路径,自己更新
Set nApp = GetObject(nPath)
nApp.Sheets(1).Range("p:p").Copy ThisWorkbook.Sheets(1).Range("p1")
nApp.Close
Set nApp = Nothing
End Sub
'下面代码放到workbook 中
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets(1).Range("p:p") = ""
ThisWorkbook.Save
End Sub
Private Sub CommandButton1_Click()
Dim nPath$, nApp
nPath = "e:\mydoc\text.xlsx" '查询文件路径,自己更新
Set nApp = GetObject(nPath)
nApp.Sheets(1).Range("p:p").Copy ThisWorkbook.Sheets(1).Range("p1")
nApp.Close
Set nApp = Nothing
End Sub
'下面代码放到workbook 中
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets(1).Range("p:p") = ""
ThisWorkbook.Save
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接拖进去即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询