Не выделяет диапазон для копирования на новый лист
DreOne
Дата: Вторник, 27.06.2017, 19:21 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Здравствуйте! Не могу разобраться с ошибкой выделения для копирования с одного листа на другой. Прошу объяснить не корректность в коде. Спасибо. [vba]Код
d = Sheets.Count - 2 kS = 0 For i = 2 To d m = 5 While Worksheets(i).Cells(m + 1, 7).Value <> "" m = m + 1 Wend For j = 6 To m If Worksheets(i).Cells(j, 7).Interior.Color = 65535 Then kS = kS + 1 n = 5 While Worksheets("work").Cells(m + 1, 3).Value <> "" n = n + 1 Wend Worksheets(i).Range("C" & j & ": L" & j).Select Selection.Copy Worksheets("work").Activate Worksheets("work").Range("C" & n & ": L" & n).Select ActiveSheet.Paste End If Next j Next i
[/vba]
Здравствуйте! Не могу разобраться с ошибкой выделения для копирования с одного листа на другой. Прошу объяснить не корректность в коде. Спасибо. [vba]Код
d = Sheets.Count - 2 kS = 0 For i = 2 To d m = 5 While Worksheets(i).Cells(m + 1, 7).Value <> "" m = m + 1 Wend For j = 6 To m If Worksheets(i).Cells(j, 7).Interior.Color = 65535 Then kS = kS + 1 n = 5 While Worksheets("work").Cells(m + 1, 3).Value <> "" n = n + 1 Wend Worksheets(i).Range("C" & j & ": L" & j).Select Selection.Copy Worksheets("work").Activate Worksheets("work").Range("C" & n & ": L" & n).Select ActiveSheet.Paste End If Next j Next i
[/vba] DreOne
Саморазвитие - это всё...
Ответить
Сообщение Здравствуйте! Не могу разобраться с ошибкой выделения для копирования с одного листа на другой. Прошу объяснить не корректность в коде. Спасибо. [vba]Код
d = Sheets.Count - 2 kS = 0 For i = 2 To d m = 5 While Worksheets(i).Cells(m + 1, 7).Value <> "" m = m + 1 Wend For j = 6 To m If Worksheets(i).Cells(j, 7).Interior.Color = 65535 Then kS = kS + 1 n = 5 While Worksheets("work").Cells(m + 1, 3).Value <> "" n = n + 1 Wend Worksheets(i).Range("C" & j & ": L" & j).Select Selection.Copy Worksheets("work").Activate Worksheets("work").Range("C" & n & ": L" & n).Select ActiveSheet.Paste End If Next j Next i
[/vba] Автор - DreOne Дата добавления - 27.06.2017 в 19:21
AndreTM
Дата: Вторник, 27.06.2017, 19:35 |
Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация:
500
±
Замечаний:
0% ±
2003 & 2010
[vba]Код
While Worksheets("work").Cells(m + 1, 3).Value <> "" n = n + 1 Wend
[/vba]Проверяете m а, инкременируете n
[vba]Код
While Worksheets("work").Cells(m + 1, 3).Value <> "" n = n + 1 Wend
[/vba]Проверяете m а, инкременируете n AndreTM
Skype: andre.tm.007 Donate: Q iwi: 9517375010
Ответить
Сообщение [vba]Код
While Worksheets("work").Cells(m + 1, 3).Value <> "" n = n + 1 Wend
[/vba]Проверяете m а, инкременируете n Автор - AndreTM Дата добавления - 27.06.2017 в 19:35
DreOne
Дата: Вторник, 27.06.2017, 19:43 |
Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Проверяете m а, инкременируете n
Спасибо, изменил. Но ошибку выдает на строчке [vba]Код
Worksheets(i).Range("C" & j & ": L" & j).Select
[/vba]
Проверяете m а, инкременируете n
Спасибо, изменил. Но ошибку выдает на строчке [vba]Код
Worksheets(i).Range("C" & j & ": L" & j).Select
[/vba]DreOne
Саморазвитие - это всё...
Ответить
Сообщение Проверяете m а, инкременируете n
Спасибо, изменил. Но ошибку выдает на строчке [vba]Код
Worksheets(i).Range("C" & j & ": L" & j).Select
[/vba]Автор - DreOne Дата добавления - 27.06.2017 в 19:43
Udik
Дата: Вторник, 27.06.2017, 19:48 |
Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация:
192
±
Замечаний:
0% ±
Excel 2016 х 64
Ну т.е. мы должны телепатически определить что с Вашим файлом не так. Например, i стало больше количества листов, или лист неактивный.
Ну т.е. мы должны телепатически определить что с Вашим файлом не так. Например, i стало больше количества листов, или лист неактивный. Udik
вот вам барабан яд 41001231307558 wm R419131876897 udik1968@gmail.com
Сообщение отредактировал Udik - Вторник, 27.06.2017, 19:51
Ответить
Сообщение Ну т.е. мы должны телепатически определить что с Вашим файлом не так. Например, i стало больше количества листов, или лист неактивный. Автор - Udik Дата добавления - 27.06.2017 в 19:48
DreOne
Дата: Вторник, 27.06.2017, 20:09 |
Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Файл не прикрепить, более 300 КБ. Использовать ссылки я. Диска же можно?
Файл не прикрепить, более 300 КБ. Использовать ссылки я. Диска же можно? DreOne
Саморазвитие - это всё...
Ответить
Сообщение Файл не прикрепить, более 300 КБ. Использовать ссылки я. Диска же можно? Автор - DreOne Дата добавления - 27.06.2017 в 20:09
Udik
Дата: Вторник, 27.06.2017, 20:17 |
Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация:
192
±
Замечаний:
0% ±
Excel 2016 х 64
Сократите файл, не надо 100500 строк данных, достаточно 10.
Сократите файл, не надо 100500 строк данных, достаточно 10. Udik
вот вам барабан яд 41001231307558 wm R419131876897 udik1968@gmail.com
Ответить
Сообщение Сократите файл, не надо 100500 строк данных, достаточно 10. Автор - Udik Дата добавления - 27.06.2017 в 20:17
DreOne
Дата: Вторник, 27.06.2017, 21:36 |
Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Удалено администрацией Смог до 216 кб урезать.
Удалено администрацией Смог до 216 кб урезать.DreOne
Саморазвитие - это всё...
Ответить
Сообщение Удалено администрацией Смог до 216 кб урезать.Автор - DreOne Дата добавления - 27.06.2017 в 21:36
Manyasha
Дата: Вторник, 27.06.2017, 23:05 |
Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
898
±
Замечаний:
0% ±
Excel 2010, 2016
Select работает только на активном листе. кусок с копипастом можно переписать так: [vba]Код
Worksheets(i).Range("C" & j & ": L" & j).Copy Worksheets("work").Range("C" & n & ": L" & n)
[/vba] [offtop] что-то я не дочитала...))[/offtop]
Select работает только на активном листе. кусок с копипастом можно переписать так: [vba]Код
Worksheets(i).Range("C" & j & ": L" & j).Copy Worksheets("work").Range("C" & n & ": L" & n)
[/vba] [offtop] что-то я не дочитала...))[/offtop] Manyasha
ЯД: 410013299366744 WM: R193491431804
Сообщение отредактировал Manyasha - Вторник, 27.06.2017, 23:06
Ответить
Сообщение Select работает только на активном листе. кусок с копипастом можно переписать так: [vba]Код
Worksheets(i).Range("C" & j & ": L" & j).Copy Worksheets("work").Range("C" & n & ": L" & n)
[/vba] [offtop] что-то я не дочитала...))[/offtop] Автор - Manyasha Дата добавления - 27.06.2017 в 23:05
DreOne
Дата: Среда, 28.06.2017, 02:15 |
Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Select работает только на активном листе. кусок с копипастом можно переписать так:
Спасибо Вам огромное, копирование работает. Буду разбираться, почему копирует только на одну строчку на новом листе. Еще раз спасибо
Select работает только на активном листе. кусок с копипастом можно переписать так:
Спасибо Вам огромное, копирование работает. Буду разбираться, почему копирует только на одну строчку на новом листе. Еще раз спасибоDreOne
Саморазвитие - это всё...
Ответить
Сообщение Select работает только на активном листе. кусок с копипастом можно переписать так:
Спасибо Вам огромное, копирование работает. Буду разбираться, почему копирует только на одну строчку на новом листе. Еще раз спасибоАвтор - DreOne Дата добавления - 28.06.2017 в 02:15