Как скопировать значения в диапазоне от одного листа до другого и вставить его в предопределенном порядке с помощью VBA? - PullRequest
0 голосов
/ 14 ноября 2018

Я пытаюсь скопировать значения в определенном диапазоне с одного листа на другой. При вставке значений на новый лист должен быть предопределенный порядок вставки значений.


image

Я создал программу, но возникает ошибка в определении цикла For. Обратите внимание, что в этом примере Num_Tacksta = 2, m = 9 (эти два являются переменными).

Sub New_Try(m)

Dim n, i, j, x, k, a, rowinres, Num_Tacksta, Num_TackMul As Variant
Num_Tacksta = Sheets("ALLO").Range("E4").Value
Num_TackMul = (Sheets("ALLO").Range("E4").Value) * 2
x = Sheets("ALLO").Range("E4").Value


For rowinres = 2 To Num_Tacksta Step 1
    For i = 2 To Num_TackMul Step 2
        Sheets("Final").Range("A" & rowinres &, ",M" & rowinres).Copy Destination:=Sheets("Results").Range("A" & i)
        rowinres = rowinres + 1
    Next i

    For j = 3 To Num_TackMul Step 2
        Sheets("Dummy_Result").Range("A" & rowinres &, ",M" & rowinres).Copy Destination:=Sheets("Results").Range("A" & j)
        rowinres = rowinres + 1
    Next j

    For k = Num_TackMul + 1 To m Step 1
        Sheets("Dummy_Result").Range("A" & rowinres &, ",M" & rowinres).Copy Destination:=Sheets("Results").Range("A" & k)
        rowinres = rowinres + 1
    Next k

Next rowinres


End Sub

Насколько я знаю в VBA, проблема в этой строке Sheets("Dummy_Result").Range("A:M" & rowinres).Copy Destination:=Sheets("Results").Range("A" & j). Я хотел бы также спросить, есть ли какой-либо простой метод, доступный.

Я новичок в программировании, а также в переполнении стека. Помочь мне в этом было бы очень полезно! Я заранее благодарю вас, ребята.

1 Ответ

0 голосов
/ 14 ноября 2018

Попробуйте двоеточие вместо запятая в диапазоне копий:

Sheets("Results").Range("A" & rowinres & ":M" & rowinres).Copy Destination:=Sheets("Final").Range("A" & i)

Запятая используется в таких функциях, как SUM () , но для указания диапазона используется двоеточие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...