2013-08-23 69 views
0

我已经尝试过各种表达式来做[在两个工作表之间复制Excel表格的简单任务]。另外,我需要将表达式放在循环中。这里有四个表达式(都以“表格”开头)我尝试过了。他们都编译,但然后崩溃后运行:在两个工作表之间复制Excel表格

p = 6 
For i = 1 To NumTables 
    'Read "OP LLs" table into "EIRP budget" 
    Sheets("EIRP Budget").[B6:L17] = Sheets("OP LLs").Range(Cells(p, 2), Cells(p + 11, 12)) 
    Sheets("EIRP Budget").[B6:L17] = Sheets("OP LLs").[Cells(p, 2), Cells(p + 11, 12)] 
    Sheets("OP LLs").Range(Cells(p, 2), Cells(p + 11, 12)).Copy Sheets("EIRP Budget").[B6] 
    Sheets("OP LLs").["B" & p & : & "L" & p + 11].Copy Sheets("EIRP Budget").[B6:L17] 
    p = p + 15 
Next 

任何帮助将不胜感激。

+0

哪条线明确导致崩溃?什么是错误信息? –

回答

1

我怀疑你有,因为你的不合格细胞的困难(你不指定什么工作表单元格指)

尝试(未测试):

dim wksCopyFrom as Worksheet 
dim wksCopyTo as Worksheet 

set wksCopyFrom = Sheets("OP LLs") 
set wksCopyTo = Sheets("EIRP Budget") 

For i = 1 To NumTables 
    p = 6 
    'Read "OP LLs" table into "EIRP budget" 
    wksCopyFrom.Range(wksCopyFrom.Cells(p,2), wksCopyFrom.Cells(p+11,12)).Copy wksCopyTo.Range("B6") 
    p = p + 15 
Next 
+0

谢谢,这工作。我不知道这种方法,它改进了我的代码。对您的语法进行一次小修改:在“.Copy”之前放置一个额外的“)”,代码按预期工作。 – jmaz

+0

谢谢Max。我没有时间去测试它 - 我现在已经更正了代码。 – dendarii

相关问题