Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 8785|回复: 5

[已解决]range之间赋值,如何将格式也带过去?

[复制链接]
发表于 2013-8-30 17:12 | 显示全部楼层 |阅读模式
我有一个excel vba程序,需要将某区域复制多份到其他区域,例如:Rows("1:6") 复制到 Rows("7:12")。
此前采用range.copy方法,但执行多次后速度很慢;现改为range赋值,如:Rows("7:12").Value = Rows("1:6").Value,速度大幅提升,但格式没带过去,仅把值带过去了。
请问如何采取赋值的方法,同时把格式带过去?

最佳答案
2013-8-30 17:38
本帖最后由 我心飞翔410 于 2013-8-30 17:56 编辑
bhguo 发表于 2013-8-30 17:31
无法统一设置格式,我们需要从其它地方获取数据,根据数据条数决定复制次数,是活的,不是固定死的。


Application.CutCopyMode = False
你试试 我在网上搜的清空剪切板 复制 粘贴 一次  执行一次 这个冒失不行
你试试把这个

Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
       你的代码
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-8-30 17:19 | 显示全部楼层
本帖最后由 我心飞翔410 于 2013-8-30 17:28 编辑

可以统一设置格式嘛
回复

使用道具 举报

 楼主| 发表于 2013-8-30 17:31 | 显示全部楼层
无法统一设置格式,我们需要从其它地方获取数据,根据数据条数决定复制次数,是活的,不是固定死的。
回复

使用道具 举报

发表于 2013-8-30 17:38 | 显示全部楼层    本楼为最佳答案   
本帖最后由 我心飞翔410 于 2013-8-30 17:56 编辑
bhguo 发表于 2013-8-30 17:31
无法统一设置格式,我们需要从其它地方获取数据,根据数据条数决定复制次数,是活的,不是固定死的。


Application.CutCopyMode = False
你试试 我在网上搜的清空剪切板 复制 粘贴 一次  执行一次 这个冒失不行
你试试把这个

Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
       你的代码
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True

评分

参与人数 1 +1 收起 理由
bhguo + 1 很给力!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2013-8-30 18:09 | 显示全部楼层
你太棒了!设置Application.Calculation = xlCalculationManual后非常有效,这样我就可仍然采用copy方法。谢谢!

点评

给个最佳啊  发表于 2013-8-30 18:09
回复

使用道具 举报

发表于 2013-9-19 09:52 | 显示全部楼层
我心飞翔410 发表于 2013-8-30 17:38
Application.CutCopyMode = False
你试试 我在网上搜的清空剪切板 复制 粘贴 一次  执行一次 这个冒失 ...

学习了!高明啊!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-22 15:09 , Processed in 0.294591 second(s), 16 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表