Страницы: 1
RSS
перенос данных - копированием (VBA), не копирует последние 4 строки, может некорректно задаю диапазон?
 
Код
Sub перенос()
Dim d As String
d = Sheets("Новая схема проводок").Range("B6").CurrentRegion.Rows.Count
Sheets("Новая схема проводок").Range("B6:AO" & d).Select
Range("B6:AO" & d).Copy Sheets("Лист2").Range("A1")
Не пойму почему копирует и переносит не все строки( последние 4 не захватывает), помогите,пожалуйста,разобраться, таблица в диапазоне B:AO, конкретный диапазон не задаю,т.к. размеры таблицы меняются (по количеству строк)
Изменено: katealex - 15.09.2016 10:00:52
 
1. CurrentRegion - это СВЯЗАННЫЙ диапазон. Возможно, у Вас есть пустая строка, которая и "разбивает" нужный Вам диапазон.
2. Т. к. Вы задаете диапазон явно указывая строку (переменная d), то нужно знать, как количество строк диапазона (Rows.Count) соотносится к абсолютному значению строк листа.
Более конкретно без примера файла ответить затруднительно.
Изменено: SAS888 - 15.09.2016 10:12:46
Чем шире угол зрения, тем он тупее.
 
katealex, без примера трудновато
проверьте через msgbox(d) свою переменную
я так понимаю что количество строк определяется по столбцу В
если не досчитаетесь по msgbox(d) то попробуйте определить строчку так
d = Worksheets("Новая схема проводок").Cells(Rows.Count, 2).End(xlUp).Row
 
Выполните
Код
Range("B6").CurrentRegion.Select
и Вам станет понятно, почему количество строк в этом диапазоне (Ваша переменная d) не совпадает с АБСОЛЮТНЫМ НОМЕРОМ последней заполненной строки диапазона.
Чем шире угол зрения, тем он тупее.
 
спасибо большое!!! все получилось через d = Worksheets("Новая схема проводок").Cells(Rows.Count, 2).End(xlUp).Row
 
при проверке,кстати, выделяется нужный диапазон
Код
Range("B6").CurrentRegion.Select
 
А Вы посчитайте количество строк в выделенном диапазоне и убедитесь, что оно не равно номеру последней строки диапазона.
ИМХО выше Вашего диапазона есть пустые строки.
Изменено: SAS888 - 15.09.2016 10:41:02
Чем шире угол зрения, тем он тупее.
 
katealex, ну конечно получилось  :) почитайте там определение строки на все случаи жизни
статья умнейшего человека
Изменено: Azakia - 15.09.2016 10:39:16
 
не равно, был применен автофильтр и затем нужно было отфильтрованные данные перенести, значит неверно присвоила переменной значение через CurrentRegion, теперь понятно,почему не работало, спасибо!
Страницы: 1
Читают тему
Наверх