0

2 つのワークシート間で Excel のテーブルをコピーするという単純なタスク [と思われるもの] を実行するために、さまざまな式を試しました。さらに、ループ内で式を囲む必要があります。以下は、私が試した 4 つの式 (すべて「Sheets」で始まる) です。それらはすべてコンパイルされますが、実行時にクラッシュします。

    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

どんな助けでも大歓迎です。

4

1 に答える 1

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
于 2013-08-23T12:44:57.727 に答える