Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 我想将上一张工作表的内容复制到同一工作手册中的新工作表中_Vba_Excel - Fatal编程技术网

Vba 我想将上一张工作表的内容复制到同一工作手册中的新工作表中

Vba 我想将上一张工作表的内容复制到同一工作手册中的新工作表中,vba,excel,Vba,Excel,我的工作手册共有7页,其中4页是隐藏的。我想 使用VBA创建新图纸 将最后一张图纸的所有内容复制到上面创建的新图纸 我试着使用下面的代码 sheet_name_to_create = InputBox("Enter Sheet Name") For rep = 1 To (Worksheets.count) If LCase(Sheets(rep).Name) = LCase(sheet_name_to_create) Then MsgBox " This Sheet already exis

我的工作手册共有7页,其中4页是隐藏的。我想

使用VBA创建新图纸 将最后一张图纸的所有内容复制到上面创建的新图纸 我试着使用下面的代码

sheet_name_to_create = InputBox("Enter Sheet Name")

For rep = 1 To (Worksheets.count)
If LCase(Sheets(rep).Name) = LCase(sheet_name_to_create) Then
MsgBox " This Sheet already exists"
Exit Sub
End If
Next
ActiveSheets.copy After:=Sheets(Sheets.count)
Sheets(ActiveSheet.Name).Name = sheet_name_to_create
但这段代码创建了工作簿中所有现有工作表的新副本

请推荐最好的解决方案


提前感谢您的帮助

宏将询问您新工作表的名称,然后复制最后一张工作表

Sub AddNewSheet()
sheet_name_to_create = InputBox("Enter Sheet Name")
For rep = 1 To (Worksheets.Count)
    If LCase(Sheets(rep).Name) = LCase(sheet_name_to_create) Then
    MsgBox " This Sheet already exists"
    Exit Sub
    End If
Next
Sheets(Sheets.Count).Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = sheet_name_to_create
End Sub

@cundy我还有一个问题,我正在复制的excel表中有从以前的表中导出数据的公式。这些公式引用是否可以自动更新?如果我理解正确,您可以使用CTRL+H简单地更改整个工作表中的引用。若要将其添加到宏中,请使用宏记录器并根据需要修改结果。