![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Пользователь
Регистрация: 02.01.2011
Сообщений: 10
|
![]()
Уважаемые форумчане , подскажите пожалуйста , как в этом макросе
сделать так , что-бы Перед, каждыми собранными данными с одного листа в начале на строку выше, что-бы было написано название с какого листа эти данные к примеру (Лист 1, и т.д ) , на общем листе ("полный список") Sub korobka() Dim Ws As Worksheet Dim LastRow As Long Dim iLastRow As Long Dim Rng As Range Application.DisplayAlerts = False Application.ScreenUpdating = False If Sheets(Sheets.Count).Name = "Полный_список" Then Sheets(Sheets.Count).Delete Sheets(1).Copy After:=Sheets(Sheets.Count) Sheets(Sheets.Count).Name = "Полный_список" Set Rng = ActiveSheet.UsedRange Rng.Clear For i = 1 To Sheets.Count - 1 LastRow = Cells(Rows.Count, 2).End(xlUp).Row With Sheets(i) iLastRow = .Cells(Rows.Count, 2).End(xlUp).Row Range(.Cells(1, 1), .Cells(iLastRow, 3)).Copy Cells(LastRow + 2, 1) Range(.Cells(1, 6), .Cells(iLastRow, 9)).Copy Cells(LastRow + 2, 5) End With Next Rows(1).Delete Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub |
![]() |
![]() |
![]() |
#2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
...
For i = 1 To Sheets.Count - 1 LastRow = Cells(Rows.Count, 2).End(xlUp).Row cells(lastrow,1) = sheets(i).name lastrow = lastrow+1 With Sheets(i) ...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 02.01.2011
Сообщений: 10
|
![]()
Большое спасибо IgorGO !!! Это второй сайт , на котором я задал этот вопрос и только вы смогли ответить , так быстро . Настоящий Профессионал !!!
|
![]() |
![]() |
![]() |
#4 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
Ну раз Вы так...
Код:
Код:
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 02.01.2011
Сообщений: 10
|
![]()
IgorGO , всё отлично я сделал , что вы мне подсказали . Только я не знаю , как сделать , что-бы название листа , которое вставляется ,не удаляла нижнюю ячейку со значением , а вставлялась где нибудь на не занятой ячейке ? Прошу Извинений , что раньше это не написал .
|
![]() |
![]() |
![]() |
#6 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
...
For i = 1 To Sheets.Count - 1 LastRow = Cells(Rows.Count, 2).End(xlUp).Row + 1 cells(lastrow,1) = sheets(i).name lastrow = lastrow+1 With Sheets(i) ...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 02.01.2011
Сообщений: 10
|
![]()
IgorGO всё Прекрасно получилось с Вашей помощью !!! С меня будет маленькая благодарность , по Webmoney !!!
Вот код : Sub superkorobka() Dim Ws As Worksheet Dim LastRow As Long Dim iLastRow As Long Application.DisplayAlerts = False Application.ScreenUpdating = False If Sheets(Sheets.Count).Name = "Полный_список" Then Sheets(Sheets.Count).Activate Else Sheets(1).Copy After:=Sheets(Sheets.Count) Sheets(Sheets.Count).Name = "Полный_список" End If ActiveSheet.UsedRange.Clear For i = 1 To Sheets.Count - 1 LastRow = Cells(Rows.Count, 2).End(xlUp).row + 1 Cells(LastRow, 1) = Sheets(i).Name LastRow = LastRow + 1 With Sheets(i) iLastRow = .Cells(Rows.Count, 2).End(xlUp).row Range(.Cells(1, 1), .Cells(iLastRow, 3)).Copy Cells(LastRow + 2, 1) Range(.Cells(1, 6), .Cells(iLastRow, 9)).Copy Cells(LastRow + 2, 5) End With Next Rows(1).Delete Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub |
![]() |
![]() |
![]() |
#8 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
и я рад за Вас!
Александр, обращайтесь. С Рождеством!!!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 02.01.2011
Сообщений: 10
|
![]()
Большое спасибо и вас поздравляю , с Рождеством !!!
|
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 02.01.2011
Сообщений: 10
|
![]()
Вернее будет , Вас , поздравляю с Рождеством !!!
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как в один лист можно собрать данные с других листов | Lis000iq | Microsoft Office Excel | 12 | 24.08.2015 12:51 |
Как создать кнопку для всех листов книги? | kipish_lp | Microsoft Office Excel | 5 | 06.05.2010 17:43 |
снятие пароля с книги/листа из другой книги? | Bezdar | Microsoft Office Excel | 3 | 25.12.2008 11:59 |
вставить в CheckBox на форме название только тех листов книги, которые помечены определенным символом? | Bezdar | Microsoft Office Excel | 4 | 23.07.2008 15:30 |