2016-08-31 6 views
1

Я новичок в VBA и выгляжу как подобный код с заголовком VBA скрипта для копирования соседних ячеек, если дубликат найденПравильный синтаксис для Range (Cells(), Cells())

Range(Cells(firstInstanceRow + 1, 2), Cells(lastInstanceRow, 2)).Copy 

Это выбирает столбца B и вставьте в соседнюю ячейку C, но мне нужно будет выбрать B: D и вставить E: G до тех пор, пока не будет найден дубликат.

+1

Посмотрите здесь: http://stackoverflow.com/questions/15573778/how-can-i-copy-a-row-of-data-and-paste-it-with-an-offset – Clauric

ответ

0

Range(Cells(x, y), Cells(a, b)) Выбирает все ячейки из x, y в левом верхнем углу, a, b в правом нижнем углу. Однако синтаксис немного странный, потому что ROW приходит первым (x или a), а COLUMN занимает второе место (y или b). Поэтому ваш 2 в обоих Cells() указывает колонку B. Просто измените его на 4 во втором Cells(), чтобы выбрать B:D.

Range(Cells(firstInstanceRow + 1, 2), Cells(lastInstanceRow, 4)).Copy 
+0

Если это работает для вас, пожалуйста, примите зеленую галочку. – Chrismas007

+0

Спасибо @ Chrismas007 пробовал свой путь, он не работал для меня, я переписал свои требования, пожалуйста, взгляните и помогите мне. –

+1

@IvrameshKannan Я бы порекомендовал оставить этот вопрос так, как вы изначально задавали, и задавать вопрос новыми критериями. Переписывание вопроса теперь не получит новых взглядов. Я верну ваш вопрос обратно к оригиналу, и я предлагаю задать новый Q. – Chrismas007