[英]Copy and paste into a new sheet that is created in the same VBA code
我在這里或互聯網上的任何地方都找不到這個問題的答案! 所以請幫助我:
1)我將不創建一個我命名的新工作表,2)之后,我將不將特定的單元格復制到此新創建的工作表中。
我看過成千上萬的視頻,解釋了創建新工作表並以我在特定單元格中編寫的內容命名的代碼,到目前為止一切順利。 我也看到過成千上萬個將值復制到現有工作表中的地方,很好。 但是我找不到任何人描述如何在特定的單元格中創建一個名為Idefine的新工作表,然后將值復制到其中。 當我在特定單元格中更改名稱時,我想復制到新工作表中。
這是我為第一部分(工作正常)和第二部分(工作不太正常)編寫的代碼:
sheet_name_to_create = Blad1.Range("e33").Value
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
' börja kopieringen
Sheets.Add After:=ActiveSheet
Sheets(ActiveSheet.Name).Name = sheet_name_to_create
'Second part trying to copy and paste
'Now I want to copy values in "Blad1" to the newly made sheet ("sheet_name_to_create"). I know these codes are wrong, but it's what I got:
Range("A1:AM73").Select
Selection.Copy
Sheets.Add After:=ActiveSheet
ActiveSheet.Paste
ActiveWindow.Zoom = 25
' Or
WorksWorksheets("Blad1").Range ("A1:AF80").Copy Worksheets("sheet_name_to_create").Range ("A1:AF80")
請幫忙
創建新工作表時,請參考它-如下所示:
Set sourceSheet = ActiveSheet
Set destSheet = Sheets.Add(After:=sourceSheet)
現在,您可以使用sourceSheet
和destSheet
引用源工作表或目標。
然后,您可以將名稱應用於destSheet
:
destSheet.Name = sheet_name_to_create
然后您可以從源代碼復制/粘貼到目標表:
sourceSheet.Range("A1:AM73").Copy destSheet
因此,您的代碼變為:
sheet_name_to_create = Blad1.Range("e33").Value
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
Set sourceSheet = ActiveSheet
Set destSheet = Sheets.Add(After:=sourceSheet)
destSheet.Name = sheet_name_to_create
sourceSheet.Range("A1:AM73").Copy destSheet
ActiveWindow.Zoom = 25
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.