我想在其他18个工作表中复制特定范围的单元格。在下面的代码中我提到了“学生#1”,但总共有24张。我写的代码是这样的:
Sub copyrange()
Sheets("stn-1questions").Range("d1:f26").Copy Sheets("student#1").Range("d10")
End Sub
如果有人可以帮助我,我将不胜感激
答案 0 :(得分:2)
你可以试试这个:
Sub main()
Dim i As Integer
Dim strSheet As String
For i = 1 To 18
strSheet = "student#" & Strings.Trim(Str(i))
Call Sheets("stn-1questions").Range("d1:f26").Copy(Sheets(strSheet).Range("d10"))
Next i
End Sub
它将遍历每个工作表并将值复制到适当的位置
答案 1 :(得分:2)
这将遍历宏工作簿中的每个工作表,并将范围复制到包含" student#"的每个工作表。
Sub copyrange()
Dim s As Worksheet
' Loop through all sheets in the workbook
For Each s In ThisWorkbook.Sheets
' If the current sheet has the word "student#" in its name
If InStr(s.Name, "student#") Then
' Copy the range D1:F26 to the current sheet
Sheets("stn-1questions").Range("D1:F26").Copy s.Range("D10")
End If
Next
End Sub