ActiveSheet.copy问题(vba,excel)
嘿家伙,我有一个小问题。 我有一个名为“主”的表,从另一个名为“数据”的文件表中获取值。 当我激活“ActiveSheet.copy”(在“主”文件中)它复制工作表,但单元格链接。 我想知道是否有任何方法来复制表单的值?
其次,我的“主”工作表有一些合并的单元格,所以即使我通过select范围手动复制和粘贴工作表,由于合并的单元格,它不能被复制。
PS我希望我能很好地解释自己 – 正如你所看到的,英语不是我的第一语言。
谢谢
看看你用PasteSpecial
得到的选项:
- 值 :这不会复制链接和只是值
- 除边界外的所有内容 :这将保留合并的单元格格式
示例 – 假设您要将工作表1复制到工作表1合并单元格的工作表2中
- 在工作表1中,按
CTRL + A
select所有,然后CTRL + C
进行复制 - 在工作表2中select单元格A1
- 现在右键单击并select
Paste Special...
- 在对话框中select
All except borders...
更新 – VBA
Sub CopyWithMergedCells() ActiveSheet.Cells.Copy //select all cells on sheet1 and copy Worksheets("Sheet2").Select Cells.Select //select all cells on sheet2 Selection.PasteSpecial Paste:=xlPasteAllExceptBorders, Operation:=xlNone, SkipBlanks:=False, Transpose:=False //paste with formats preserved End Sub
Paste:=xlPasteAllExceptBorders
是关键位。 你需要改变这个,如果你只想复制值(而不是链接)