Я написал код, который копирует данные (в строке) из Sheet3 и транспонирует пасту в COLUMN c в Sheet2. Однако мне нужно разбить строки, скопированные и вставленные на основе условие, что идентификатор в Sheet2 Column A1 TO A4000 соответствует столбцам D1 TO D4000.Код VBA - скопировать и переместить пасту с определенными условиями
Цитирование по строкам в Sheet3 и вставка его, заполняя его вправо, т.е. транспонируйте.
Например:
SHEET 3:
1 202 Anna
2 202 Mary
3 202 Gary
4 204 France
5 204 Greece
6 301 London
7 301 Alice
8 301 Mandy
9 406 HongKong
10 406 Osaka
вставленная в Листе 2 В:
A B C D
1 202 Anna Mary Gary
2 204 France Greece
3 301 London Alice Mandy
Вот мой текущий код:
Dim Sourcerange As Range
Dim Targetrange As Range
Set Sourcerange = Sheet3.Range("N3:N4105")
Set Targetrange = Sheet2.Range("C1:C4105")
Sourcerange.Copy
Targetrange.PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, SkipBlanks:=False, _
Transpose:=True
End Sub
Я хотел бы Переберите строк без необходимо изменить диапазон выделения или целевого диапазона от кода.
, Когда я запускаю код, я получаю сообщение об ошибке выполнения 9 : Индекс вне диапазона. Может ли это быть чем-то связанным с идентификатором? – user3782929
Я попробовал отладку, и ошибка, похоже, исходит из этой строки x = Листы («Лист3»). Ячейки (Rows.Count, «A1: A»). End (xlUp) .Row – user3782929
@ user3782929 проверить имя листа, если вы получаете такую ошибку в этой строке, тогда «Sheet3» не существует в вашей книге. код был написан на основе предоставленного вами образца данных, где источником является «Sheet3» с данными в столбцах «A: B» и «Sheet2», – Vasily