我试图遍历工作表Sheet1的A列(单元格A3至A5)(单元格值为1、2和3)。并将这些值复制并粘贴到单元格A1中的其他工作表中。所以Sheet2 A1有1,Sheet3 A1有2,Sheet4 A1有3。相反,我的代码最终将3放入所有工作表中。有人可以帮忙吗?预先感谢
Sub test()
Dim X As Long, Y As Long
For X = 2 To Worksheets.Count
For Y = 3 To 5
Sheets("sheet1").Range("A" & Y).Copy Worksheets(X).Range("A1")
End Sub
答案 0 :(得分:0)
这应该有效:
Option Explicit
Sub RunIT()
Dim rng As Range
Dim intI As Integer
Set rng = Worksheets(1).Range("A3:A5")
For intI = 2 To Worksheets.Count
rng.Cells(intI - 1, 1).Copy Worksheets(intI).Range("A1")
Next intI
Set rng = Nothing
End Sub
答案 1 :(得分:0)
Sub CopyToWorksheets()
' List of Worksheet Names
Const cSheets As String = "Sheet1,Sheet2,Sheet3,Sheet4"
Const cRange As String = "A3:A5" ' Source Worksheet Range
Const cCell As String = "A1" ' Target Worksheet Cell Range
Dim vntWs As Variant ' Worksheet Array
Dim i As Long ' Worksheet Array Row Counter
' Split List of Worksheet Names into Worksheet Array.
vntWs = Split(cSheets, ",")
' In Source Worksheet
With ThisWorkbook.Worksheets(vntWs(0))
' Loop through cells of Source Worksheet Range.
For i = 1 To UBound(vntWs)
' Copy value of current cell of Source Worksheet Range
' to current Target Worksheet Cell Range.
.Parent.Worksheets(vntWs(i)).Range(cCell) = .Range(cRange).Cells(i)
Next
End With
End Sub