ActiveSheet.copy问题(vba,excel)

嘿家伙,我有一个小问题。 我有一个名为“主”的表,从另一个名为“数据”的文件表中获取值。 当我激活“ActiveSheet.copy”(在“主”文件中)它复制工作表,但单元格链接。 我想知道是否有任何方法来复制表单的值?

其次,我的“主”工作表有一些合并的单元格,所以即使我通过select范围手动复制和粘贴工作表,由于合并的单元格,它不能被复制。

PS我希望我能很好地解释自己 – 正如你所看到的,英语不是我的第一语言。

谢谢

看看你用PasteSpecial得到的选项:

  • :这不会复制链接和只是值
  • 除边界外的所有内容 :这将保留合并的单元格格式

示例 – 假设您要将工作表1复制到工作表1合并单元格的工作表2中

  • 在工作表1中,按CTRL + Aselect所有,然后CTRL + C进行复制
  • 在工作表2中select单元格A1
  • 现在右键单击并selectPaste Special...
  • 在对话框中selectAll 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是关键位。 你需要改变这个,如果你只想复制值(而不是链接)