powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в этом макросе указать название каждого листа и книги ,при сборе всех листов на один ?
6 сообщений из 6, страница 1 из 1
Как в этом макросе указать название каждого листа и книги ,при сборе всех листов на один ?
    #37046960
Саша2410
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые форумчане , подскажите пожалуйста , как в этом макросе указать адрес (название каждого листа и книги) перед каждым на листе ("полный список") ?


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
...
Рейтинг: 0 / 0
Как в этом макросе указать название каждого листа и книги ,при сборе всех листов на один ?
    #37046981
Саша2410,
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Sub korobka()
Dim Ws As Worksheet
Dim LastRow As Long
Dim iLastRow As Long
Dim Rng As Range
Dim sWorkBook as String
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
sWorkBook = "Книга: " & ThisWorkbook.Name
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 )
Cells(LastRow +  1 ,  1 ).Value = sWorkBook & "; Лист: " & .Name
End With
Next
Rows( 1 ).Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
...
Рейтинг: 0 / 0
Как в этом макросе указать название каждого листа и книги ,при сборе всех листов на один ?
    #37046983
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саша2410 перед каждым на листе
Перед каждым чем, простите?

Workbooks("Книга2").Worksheets("Лист2")
...
Рейтинг: 0 / 0
Как в этом макросе указать название каждого листа и книги ,при сборе всех листов на один ?
    #37046984
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProСаша2410 перед каждым на листе
Перед каждым чем, простите?
Workbooks("Книга2").Worksheets("Лист2")
Сорри, я кажется вопрос не понял, а пробуй камнем догадливее :)
...
Рейтинг: 0 / 0
Как в этом макросе указать название каждого листа и книги ,при сборе всех листов на один ?
    #37046993
Саша2410
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Перед, каждыми собранными данными с одного листа в начале на строку выше, что-бы было написано название с какого листа эти данные к примеру (Лист 1 и т.д ) , на общем листе .
...
Рейтинг: 0 / 0
Как в этом макросе указать название каждого листа и книги ,при сборе всех листов на один ?
    #37047763
Саша2410
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Саша2410,

Если кому будет интересно вот , код . IgorGO помог !!!

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
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в этом макросе указать название каждого листа и книги ,при сборе всех листов на один ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]