VBA – 复制sheetvalues,粘贴到variables名称的工作表
我有一个用户表单,允许用户input一系列数据的date范围,这些date范围稍后将用于命名其余macros的输出。 我试图复制第一个工作表WWOutput
上的所有值,其中分析/计算所有数据,并将其粘贴到新创build的variablesDateRange
名称,每次显然都会更改。
我目前正在尝试这个:
Worksheets.Add(Before:=Worksheets("Calc")).Name = DateRange.Value Worksheets("WWOutput").Range("A1:Q1000000").Copy Worksheets(DateRange).Range("A1").PasteSpecial Paste:=xlPasteValues
新工作表被创build,并且工作表被复制,但它不复制到我想要的。 如果我尝试.Cells
而不是。 .Range
它给了我“types不匹配”
我究竟做错了什么?
玩笑
Set ws = Worksheets.Add(Before:=Worksheets("Calc")) ws.Name = DateRange.Value Worksheets("WWOutput").Range("A1:Q1000000").Copy ws.Range("A1").PasteSpecial Paste:=xlPasteValues
这应该适合您的需求。 我将对象引用设置为您添加的工作表(称为ws
),然后将其名称设置为DateRange.Value
。 在这一点上,足够简单的指定粘贴时所需的工作表。 通过这种方式,您可以在处理数据时使用任何方式的引用。 让我知道你是否需要进一步的解释?
你错过了.Value
Worksheets(DateRange.Value).Range("A1").PasteSpecial Paste:=xlPasteValues