excel vba 抓取指定文件的指定区域内容

点击按钮后会提示选择文件的对话框,选择指定文件(Excel文件)后,那个文件里的一定区域内动会被弄到当前表格的指定区域里来,并且能够自动加边框。。。谢谢了... 点击按钮后会提示 选择文件的对话框,选择指定文件(Excel文件)后,那个文件里的一定区域内动会被弄到当前表格的指定区域里来,并且能够自动加边框。。。谢谢了 展开
 我来答
阳光上的桥
2013-11-14 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21424 获赞数:65789
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
你也没说具体什么区域,我只有大致的编写个例子,你自己按照例子修改吧

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]

你修改代码后试试看是否满意。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式