Excel用宏来调用其它Excel文件的数据,并复制下来保持于这个Excel中某个工作表中。

举个例子,我在C:\1\S文件夹中有个Excel文件,文件名是test_demo.xlsx这个文件中有个工作表,名为VoiceQuality,我需要的数据是从C5到C15... 举个例子,我在C:\1\S文件夹中有个Excel文件,文件名是test_demo.xlsx
这个文件中有个工作表,名为Voice Quality,我需要的数据是从C5到C15单元格。
我需要将这些数据复制到我当前打开的这个Excel中 Sheet2 工作表的B3到B13单元格中。
求高手。
还有我希望我在A1中输入C:\1\S\[test_demo.xlsx]来控制读取哪个文件,或者直接弹出文件选择器,让我选择读取哪个文件的数据那当然更好了。
展开
 我来答
unsamesky
推荐于2017-11-29 · TA获得超过2735个赞
知道小有建树答主
回答量:859
采纳率:100%
帮助的人:436万
展开全部

你的这个很简单,代码如下:

Sub C5C15_B3B13()
    Dim Fo As Object, myName As String 
    Set Fo = Application.FileDialog(msoFileDialogFilePicker)
    Fo.Title = "请选择您要复制C5:C15数据的文件:"
    If Fo.Show = True Then myName = Fo.SelectedItems(1)
    If myName = "" Then
        MsgBox "您取消了文件选择,所以本次处理未完成,将直接退出", vbOKOnly + vbInformation
        Exit Sub
    End If
    
    Dim wb as Workbook
    For Each wb in Workbooks
        if wb.Fullname = myName then Goto wbHasOpened
    Next
    set wb = workbooks.open(myname)
wbHasOpened:
    
    Dim sh as worksheet
    For each sh in wb.sheets
        if sh.name = "Voice Quality" Then
            [b3:B13] = sh.[c5:c15].value
            Exit For
        end if
    Next
    Msgbox "处理完成!"
    wb.close True
End Sub
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式