任何人都可以分享有关如何从一个特定的列开始将值从一个工作表粘贴到多个工作表的知识吗?
我想从工作表(“模板”)中复制公式并将其粘贴到从F1列一直到最后一列/行的其他工作表中。以下是我的代码。我受困于第5行,在不查看工作表名称的情况下无法找到粘贴值的方法。谁能建议如何解决这一挑战?谢谢:)
Dim Y as workbook
Set Y = Thisworkbook
Dim copydata as Long
copydata=y.worksheets("Template").UsedRange.Rows.Count
Dim i as Long
For i=3 to sheets.count
Y.worksheets("name").Range("F1:x"©data).Formula= _
Y.worksheets("Template").Range("F1:X"©data).Formula
答案 0 :(得分:1)
这是上面我的评论中的代码。建议切换到For Each
循环以迭代工作簿中的所有工作表。您可以使用If
块来测试并跳过任何您不想复制此公式的工作表(“模板”是我所知道的,您应该跳过这一事实)。
Dim Y as workbook
Set Y = Thisworkbook
Dim copydata as Long
copydata=y.worksheets("Template").UsedRange.Rows.Count
Dim ws As Worksheet
For Each ws in Y.Worksheets
If ws.Name <> "Template" Then ws.Range("F1:x"©data).Formula = _
y.worksheets("Template").Range("F1:X"©data).Formula
Next ws
答案 1 :(得分:0)
您可以使用用于遍历工作表集合的相同索引。
Dim Y as workbook, copydata as Long, i as Long
Set Y = Thisworkbook
copydata=y.worksheets("Template").UsedRange.Rows.Count
For i=3 to worksheets.count
Y.worksheets(i).Range("F1:x"©data).Formula= _
Y.worksheets("Template").Range("F1:X"©data).Formula
next i