ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何复制数据到不连续的单元格区域中?

如何复制数据到不连续的单元格区域中?

作者:绿色风 分类: 时间:2022-08-17 浏览:673
楼主
chrisfang
Q:如何复制数据到不连续的单元格区域中?
A:一般情况下,在Excel工作表中复制的单元格数据只能粘贴在连续的目标单元格区域中。如果需要粘贴到指定的非连续单元格区域,可以借助VBA来实现。

方式一(包含源公式和格式,复制源区域支持单列中的连续或非连续单元格,粘贴目标区域支持单列或多列连续或非连续单元格。)


  1. Sub mypaste()
  2. Application.ScreenUpdating = False
  3. s = Selection.Count
  4. ReDim arr(s - 1)
  5. For Each Rng In Selection
  6. arr(i) = Rng.Address
  7. i = i + 1
  8. Next
  9. Range("xfd1").PasteSpecial (xlPasteAll)
  10. For i = 0 To s - 1
  11. Range("xfd1").Offset(i, 0).Cut
  12. Range(arr(i)).Select
  13. ActiveSheet.Paste
  14. Next i
  15. Application.ScreenUpdating = True
  16. End Sub


方式二(仅包含单元格数值,复制源区域支持单列中的连续或非连续单元格,粘贴目标区域支持单列或多列连续或非连续单元格。)

  1. Sub mypaste2()
  2. Set MyData = New DataObject
  3. Application.ScreenUpdating = False
  4. MyData.GetFromClipboard
  5. arr = Split(MyData.GetText(1), Chr(13) + Chr(10))
  6. i = 0
  7. For Each Rng In Selection
  8. Rng.Value = arr(i)
  9. i = i + 1
  10. Next
  11. Set MyData = Nothing
  12. Application.ScreenUpdating = True
  13. End Sub



不连续粘贴.rar


操作方法说明:
复制的时候按照系统正常的操作方法,选中单元格区域(同列中),按<Ctrl+C>复制或用菜单操作复制。
然后选定需要粘贴的目标单元格区域,可以是非连续的区域,再使用快捷键(<Ctrl+Shift+V>包含公式,<Ctrl+Shift+N>仅数值)调用宏程序即可粘贴。


 
2楼
calgo
运行下载的例子,出现一个错误: 类Range 的PasteSpecial 方法无效。
有朋友遇到相同的问题吗,excel2007.
3楼
iestore
很好,没有问题。
楼上的不要直接点击“宏”的“执行”或“单步执行”,如果点击了就会出现你的情况。

楼主是在“宏”对话框里设置了快捷键(<Ctrl+Shift+V>包含公式,<Ctrl+Shift+N>仅数值的,自己使用快捷键就运行宏了。
当然你也可以自己设置。
4楼
Aozero_1
我的也出现2楼的情况,不知道怎么回事?
已解决,因是excel2003,没有xfd1单元格,改为iv1后,OK。
5楼
Aozero_1
而且Ctrl+Shift+N不能正确实现功能,请查证。
现上传附件,请指教,谢谢!
Q2.1.zip
6楼
syc7447
下载学习,正在解决这样的总题
7楼
yogiwang
研究了好半天啊~~~
不成功的问题所在是“引用”!

8楼
1548885750
值得学习啊
9楼
yf_home
非常不错,学习了。

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap