请问如何把一个EXCEL文件中的SHEET1复制到SHEET2?

时间:2022-12-23 19:58:28
有一个已经设定了一定格式的EXCEL文件
我现在要通过VB实现以下过程:
打开EXCEL,新建一个SHEET2,把SHEET1的格式复制到SHEET2,用来自数据库的内容填充SHEET1,再把SHEET2复制到SHEET3,再填充SHEET2……

另外,由于之前乱试代码,我的OFFICE现在响应速度变得奇慢,双击一个“.XLS”或“.DOC”要等三四分钟才能打开,但是如果先从“程序”中打开OFFICE程序,再从“打开”菜单里选择文件速度就很正常……

求解,谢谢大家!

9 个解决方案

#1


用下面的语句:
Sheets("Sheet1").Copy Before:=Sheets(1)
Sheets(Sheets.Count -1).Name = "newsheet"

#2


帮你顶一下

#3


各位大哥大姐帮忙想想吧,有急用,第二个问题能不能解决都没问题,我已经打算呆会儿重装OFFICE了……

#4


Sub Marco1()
   Dim a As Worksheet
   
   Sheet1.UsedRange.Copy
   Set a = ThisWorkbook.Sheets.Add
   a.Paste
   Set a = Nothing
End Sub

#5


这样只拷贝了合并单元格的格式,有没有方法可以把行高、列宽、隐藏这些属性也都拷贝下来呢?

#6


Sub Macro1()

    
    Sheets("Sheet1").Copy After:=Sheets(3)
    
End Sub

#7


Sub Macro1()

    
    Sheets("Sheet1").Copy After:=Sheets(Sheets.Count)
    
End Sub

意思是将 Sheet1 作一个副本 放到 最后

#8


代码都给你了,你试过吗?
再写一次
Sheets("Sheet1").Copy Before:=Sheets("Sheet1")
Sheets(Sheets.Count -1).Name = "newsheet"
Sheet1是你的设定了一定格式的EXCEL表。

#9


谢谢流星雨!谢谢大家!
结帖

#1


用下面的语句:
Sheets("Sheet1").Copy Before:=Sheets(1)
Sheets(Sheets.Count -1).Name = "newsheet"

#2


帮你顶一下

#3


各位大哥大姐帮忙想想吧,有急用,第二个问题能不能解决都没问题,我已经打算呆会儿重装OFFICE了……

#4


Sub Marco1()
   Dim a As Worksheet
   
   Sheet1.UsedRange.Copy
   Set a = ThisWorkbook.Sheets.Add
   a.Paste
   Set a = Nothing
End Sub

#5


这样只拷贝了合并单元格的格式,有没有方法可以把行高、列宽、隐藏这些属性也都拷贝下来呢?

#6


Sub Macro1()

    
    Sheets("Sheet1").Copy After:=Sheets(3)
    
End Sub

#7


Sub Macro1()

    
    Sheets("Sheet1").Copy After:=Sheets(Sheets.Count)
    
End Sub

意思是将 Sheet1 作一个副本 放到 最后

#8


代码都给你了,你试过吗?
再写一次
Sheets("Sheet1").Copy Before:=Sheets("Sheet1")
Sheets(Sheets.Count -1).Name = "newsheet"
Sheet1是你的设定了一定格式的EXCEL表。

#9


谢谢流星雨!谢谢大家!
结帖