excel vba 抓取指定文件的指定区域内容
点击按钮后会提示选择文件的对话框,选择指定文件(Excel文件)后,那个文件里的一定区域内动会被弄到当前表格的指定区域里来,并且能够自动加边框。。。谢谢了...
点击按钮后会提示 选择文件的对话框,选择指定文件(Excel文件)后,那个文件里的一定区域内动会被弄到当前表格的指定区域里来,并且能够自动加边框。。。谢谢了
展开
1个回答
展开全部
你也没说具体什么区域,我只有大致的编写个例子,你自己按照例子修改吧
Sub xxx()
Dim fPath, st1, st2, wb
fPath = Application.GetOpenFilename("选择文件,*.xls;*.xlsx")
Set st1 = ActiveSheet
If fPath = False Then Exit Sub
Set wb = Workbooks.Open(fPath)
Set st2 = ActiveSheet
st2.Range("a1:e5").Copy st1.Cells(1, 1)
wb.Close
End Sub
上面的程序代码调试正确,你可以需要修改下面这一句:
st2.Range("a1:e5").Copy st1.Cells(1, 1)
例子代码完成的功能是把打开文件的A1:E5复制到当前表的A1,如果复制其它区间请相应修改
下面的语句是复制打开文件的当前表:
Set st2 = ActiveSheet
也可以修改为复制其它表,例如:
Set st2 = ActiveWorkbook.Sheets("清单")
至于加上边框的代码,你可以自己录制宏来学习,下面的代码就可以:
st1.Range("a1:e5").Borders.LineStyle = xlContinuous
Sub xxx()
Dim fPath, st1, st2, wb
fPath = Application.GetOpenFilename("选择文件,*.xls;*.xlsx")
Set st1 = ActiveSheet
If fPath = False Then Exit Sub
Set wb = Workbooks.Open(fPath)
Set st2 = ActiveSheet
st2.Range("a1:e5").Copy st1.Cells(1, 1)
wb.Close
End Sub
上面的程序代码调试正确,你可以需要修改下面这一句:
st2.Range("a1:e5").Copy st1.Cells(1, 1)
例子代码完成的功能是把打开文件的A1:E5复制到当前表的A1,如果复制其它区间请相应修改
下面的语句是复制打开文件的当前表:
Set st2 = ActiveSheet
也可以修改为复制其它表,例如:
Set st2 = ActiveWorkbook.Sheets("清单")
至于加上边框的代码,你可以自己录制宏来学习,下面的代码就可以:
st1.Range("a1:e5").Borders.LineStyle = xlContinuous
追问
大神:
我详细叙述一下。你看看能不能弄啊。。挺复杂恩。
1.点选“工作表”的按钮后。弹出对话框,找到要抓取的文件(excel)
2.选定文件后(只抓A3:I400的信息)。
3.将抓取的目标表信息(目标表的A3:I400的信息)。放到“工作表”的A11:I400
4.在抓取好的工作表,E11:G400中存判断,有罗马数字的变成红底,没有的不做变化。
谢谢大神。。。
追答
3.将抓取的目标表信息(目标表的A3:I400的信息)。放到“工作表”的A11:I400
这个放不下哦!!!
把上面代码的下面一句:
st2.Range("a1:e5").Copy st1.Cells(1, 1)
修改为:
st2.Range("a1:e5").Copy st1.[a11]
你修改代码后试试看是否满意。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询