我在工作簿中有不同的工作表。我想在“ C1”的每个工作表中输入一个值,该值我想应用于从“ K8”开始到数据的最后一行的所有行。我想为每张纸做这个。
我设法复制并粘贴每张纸的价值。但是,将值填充到数据末尾对我来说是棘手的部分。
Selection.AutoFill仅适用于活动工作表。它可以正确完成工作,但所有其他工作表仅填写“ K8”。
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
If (sh.Name <> "bla") And (sh.Name <> "blub") Then
With sh
sh.Range("C1").Copy
sh.Range("K8").PasteSpecial Paste:=xlPasteValues
Selection.AutoFill Destination:=Range(Selection, ActiveCell.Offset(0, -1).End(xlDown).Offset(0, 1))
End With
End If
Next sh
我想让工作簿中所有工作表的自动填充部分起作用。有人可以帮忙吗?
答案 0 :(得分:1)
不清楚如何定义最后一行。我已将J用作参考列,因此请更改为适合。正如PEH所说,使用Select(ion)就像
Sub x()
Dim sh As Worksheet, n As Long
For Each sh In ActiveWorkbook.Worksheets
If (sh.Name <> "bla") And (sh.Name <> "blub") Then
With sh
n = .Range("J" & Rows.Count).End(xlUp).Row
.Range("K8:K" & n).Value = .Range("C1").Value
End With
End If
Next sh
End Sub