Удаление пустых строк в диапазоне
den45444
Дата: Пятница, 21.08.2015, 10:26 |
Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Помогите с решением макроса. Нужно удалить пустые строки в диапазоне, от первой строки до конца таблицы, с учетом того, что ниже таблицы находится текст с пустыми строками, которые должны оставаться. Пример прикрепляю
Помогите с решением макроса. Нужно удалить пустые строки в диапазоне, от первой строки до конца таблицы, с учетом того, что ниже таблицы находится текст с пустыми строками, которые должны оставаться. Пример прикрепляю den45444
К сообщению приложен файл:
-2.xlsm
(20.9 Kb)
Ответить
Сообщение Помогите с решением макроса. Нужно удалить пустые строки в диапазоне, от первой строки до конца таблицы, с учетом того, что ниже таблицы находится текст с пустыми строками, которые должны оставаться. Пример прикрепляю Автор - den45444 Дата добавления - 21.08.2015 в 10:26
den45444
Дата: Пятница, 21.08.2015, 12:30 |
Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
AndreTM , Благодарю за помощь. А если взять относительно ячейки со значением "Итого на материал:" ?
AndreTM , Благодарю за помощь. А если взять относительно ячейки со значением "Итого на материал:" ?den45444
Ответить
Сообщение AndreTM , Благодарю за помощь. А если взять относительно ячейки со значением "Итого на материал:" ?Автор - den45444 Дата добавления - 21.08.2015 в 12:30
den45444
Дата: Пятница, 21.08.2015, 13:17 |
Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
AndreTM , Как можно вставить данный макрос в этот макрос: [vba]Код
Private Const strName As String = "Общие файлы.xlsm" Private Const strNameL As String = "СМЕТА" 'вывод листа strNameL в файл strName Sub копия_для_договора() Dim str1 As String, rng1 As Range, rng2 As Range str1 = ThisWorkbook.Path & Application.PathSeparator Workbooks.Open Filename:=str1 & strName With Workbooks(strName) ThisWorkbook.Sheets(strNameL).Copy Before:=.Sheets(1) .Save .Close 0 End With End Sub
[/vba] Нужно, чтобы при копировании листа в другую книгу одновременно удалялись пустые строки.
AndreTM , Как можно вставить данный макрос в этот макрос: [vba]Код
Private Const strName As String = "Общие файлы.xlsm" Private Const strNameL As String = "СМЕТА" 'вывод листа strNameL в файл strName Sub копия_для_договора() Dim str1 As String, rng1 As Range, rng2 As Range str1 = ThisWorkbook.Path & Application.PathSeparator Workbooks.Open Filename:=str1 & strName With Workbooks(strName) ThisWorkbook.Sheets(strNameL).Copy Before:=.Sheets(1) .Save .Close 0 End With End Sub
[/vba] Нужно, чтобы при копировании листа в другую книгу одновременно удалялись пустые строки.den45444
Ответить
Сообщение AndreTM , Как можно вставить данный макрос в этот макрос: [vba]Код
Private Const strName As String = "Общие файлы.xlsm" Private Const strNameL As String = "СМЕТА" 'вывод листа strNameL в файл strName Sub копия_для_договора() Dim str1 As String, rng1 As Range, rng2 As Range str1 = ThisWorkbook.Path & Application.PathSeparator Workbooks.Open Filename:=str1 & strName With Workbooks(strName) ThisWorkbook.Sheets(strNameL).Copy Before:=.Sheets(1) .Save .Close 0 End With End Sub
[/vba] Нужно, чтобы при копировании листа в другую книгу одновременно удалялись пустые строки.Автор - den45444 Дата добавления - 21.08.2015 в 13:17
den45444
Дата: Пятница, 21.08.2015, 14:03 |
Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
AndreTM , Первый вариант. Только в копии.
AndreTM , Первый вариант. Только в копии.den45444
Ответить
Сообщение AndreTM , Первый вариант. Только в копии.Автор - den45444 Дата добавления - 21.08.2015 в 14:03
den45444
Дата: Суббота, 22.08.2015, 10:43 |
Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Решил задачу попроще. [vba]Код
Sub удаление_пустых_строк() Dim firstRow&, lastRow&, lSt&, lSt1& lSt = Columns("A:A").Find(What:="конец таблицы").Row firstRow = 1 lastRow = lSt - 1 Range("A" & firstRow & ":A" & lastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub
[/vba]
Решил задачу попроще. [vba]Код
Sub удаление_пустых_строк() Dim firstRow&, lastRow&, lSt&, lSt1& lSt = Columns("A:A").Find(What:="конец таблицы").Row firstRow = 1 lastRow = lSt - 1 Range("A" & firstRow & ":A" & lastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub
[/vba] den45444
Ответить
Сообщение Решил задачу попроще. [vba]Код
Sub удаление_пустых_строк() Dim firstRow&, lastRow&, lSt&, lSt1& lSt = Columns("A:A").Find(What:="конец таблицы").Row firstRow = 1 lastRow = lSt - 1 Range("A" & firstRow & ":A" & lastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub
[/vba] Автор - den45444 Дата добавления - 22.08.2015 в 10:43
den45444
Дата: Суббота, 22.08.2015, 10:46 |
Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
А вот макрос на копирование листа в другую книгу + удаление пустых строк в диапазоне. Может кому-нибудь пригодится: [vba]Код
Private Const strName As String = "Общие файлы.xlsm" Private Const strNameL As String = "СМЕТА" 'вывод листа strNameL в файл strName Sub копия_для_договора() Dim str1 As String Dim firstRow&, lastRow&, lSt& str1 = ThisWorkbook.Path & Application.PathSeparator Workbooks.Open Filename:=str1 & strName With Workbooks(strName) ThisWorkbook.Sheets(strNameL).Copy Before:=.Sheets(1) lSt = Columns("A:A").Find(What:="КОНЕЦ ТАБЛИЦЫ").Row firstRow = 1 lastRow = lSt - 1 Range("A" & firstRow & ":A" & lastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete ActiveSheet.Shapes("Button 1").Delete ActiveSheet.Shapes("Button 2").Delete ActiveSheet.Shapes("Button 3").Delete .Save .Close 0 End With End Sub
[/vba]
А вот макрос на копирование листа в другую книгу + удаление пустых строк в диапазоне. Может кому-нибудь пригодится: [vba]Код
Private Const strName As String = "Общие файлы.xlsm" Private Const strNameL As String = "СМЕТА" 'вывод листа strNameL в файл strName Sub копия_для_договора() Dim str1 As String Dim firstRow&, lastRow&, lSt& str1 = ThisWorkbook.Path & Application.PathSeparator Workbooks.Open Filename:=str1 & strName With Workbooks(strName) ThisWorkbook.Sheets(strNameL).Copy Before:=.Sheets(1) lSt = Columns("A:A").Find(What:="КОНЕЦ ТАБЛИЦЫ").Row firstRow = 1 lastRow = lSt - 1 Range("A" & firstRow & ":A" & lastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete ActiveSheet.Shapes("Button 1").Delete ActiveSheet.Shapes("Button 2").Delete ActiveSheet.Shapes("Button 3").Delete .Save .Close 0 End With End Sub
[/vba] den45444
Ответить
Сообщение А вот макрос на копирование листа в другую книгу + удаление пустых строк в диапазоне. Может кому-нибудь пригодится: [vba]Код
Private Const strName As String = "Общие файлы.xlsm" Private Const strNameL As String = "СМЕТА" 'вывод листа strNameL в файл strName Sub копия_для_договора() Dim str1 As String Dim firstRow&, lastRow&, lSt& str1 = ThisWorkbook.Path & Application.PathSeparator Workbooks.Open Filename:=str1 & strName With Workbooks(strName) ThisWorkbook.Sheets(strNameL).Copy Before:=.Sheets(1) lSt = Columns("A:A").Find(What:="КОНЕЦ ТАБЛИЦЫ").Row firstRow = 1 lastRow = lSt - 1 Range("A" & firstRow & ":A" & lastRow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete ActiveSheet.Shapes("Button 1").Delete ActiveSheet.Shapes("Button 2").Delete ActiveSheet.Shapes("Button 3").Delete .Save .Close 0 End With End Sub
[/vba] Автор - den45444 Дата добавления - 22.08.2015 в 10:46
AndreTM
Дата: Суббота, 22.08.2015, 11:45 |
Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация:
500
±
Замечаний:
0% ±
2003 & 2010
А форматирование ячеек сметы при таком подходе не сбивается в копии? И ещё бы добавить переименование созданного листа, чтобы его потом можно было отыскать быстрее. А по идее, надо вообще в "общий накопитель" скидывать не сметы в виде для печати, а даннве из смет, в единую таблицу, с датами и ссылками на заказы/договора. Тогда в последующем можно и анализ смет легко прикрутить. Хотя я не знаю, может вы ведете учет выполненных работ отдельными табличками, где и так все нормально...
А форматирование ячеек сметы при таком подходе не сбивается в копии? И ещё бы добавить переименование созданного листа, чтобы его потом можно было отыскать быстрее. А по идее, надо вообще в "общий накопитель" скидывать не сметы в виде для печати, а даннве из смет, в единую таблицу, с датами и ссылками на заказы/договора. Тогда в последующем можно и анализ смет легко прикрутить. Хотя я не знаю, может вы ведете учет выполненных работ отдельными табличками, где и так все нормально... AndreTM
Skype: andre.tm.007 Donate: Q iwi: 9517375010
Ответить
Сообщение А форматирование ячеек сметы при таком подходе не сбивается в копии? И ещё бы добавить переименование созданного листа, чтобы его потом можно было отыскать быстрее. А по идее, надо вообще в "общий накопитель" скидывать не сметы в виде для печати, а даннве из смет, в единую таблицу, с датами и ссылками на заказы/договора. Тогда в последующем можно и анализ смет легко прикрутить. Хотя я не знаю, может вы ведете учет выполненных работ отдельными табличками, где и так все нормально... Автор - AndreTM Дата добавления - 22.08.2015 в 11:45