Автомат.перенос строк в другую таблицу по заданным правилам
qwertpet
Дата: Понедельник, 31.10.2016, 10:36 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Есть две таблички. Требуется перенести данные из левой в правую так, чтобы перенеслись только строки, не содержащие х и 8888 по столбцу А. Можно ли это как-то сделать автоматически? Чтобы не нужно было каждый раз выбирать фильтром и копипастить? Пример прилагаю.
Есть две таблички. Требуется перенести данные из левой в правую так, чтобы перенеслись только строки, не содержащие х и 8888 по столбцу А. Можно ли это как-то сделать автоматически? Чтобы не нужно было каждый раз выбирать фильтром и копипастить? Пример прилагаю. qwertpet
Сообщение отредактировал qwertpet - Понедельник, 31.10.2016, 10:38
Ответить
Сообщение Есть две таблички. Требуется перенести данные из левой в правую так, чтобы перенеслись только строки, не содержащие х и 8888 по столбцу А. Можно ли это как-то сделать автоматически? Чтобы не нужно было каждый раз выбирать фильтром и копипастить? Пример прилагаю. Автор - qwertpet Дата добавления - 31.10.2016 в 10:36
Michael_S
Дата: Понедельник, 31.10.2016, 11:08 |
Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация:
373
±
Замечаний:
0% ±
Excel2016
Формулами, или макросом? Если формулами, то необходимо сначала избавиться от ошибок (#Н/Д). формулу ВПР(....) дополните:Код
ЕСЛИОШИБКА(ВПР(....);"")
И тогда как-то так
Формулами, или макросом? Если формулами, то необходимо сначала избавиться от ошибок (#Н/Д). формулу ВПР(....) дополните:Код
ЕСЛИОШИБКА(ВПР(....);"")
И тогда как-то так Michael_S
Ответить
Сообщение Формулами, или макросом? Если формулами, то необходимо сначала избавиться от ошибок (#Н/Д). формулу ВПР(....) дополните:Код
ЕСЛИОШИБКА(ВПР(....);"")
И тогда как-то так Автор - Michael_S Дата добавления - 31.10.2016 в 11:08
qwertpet
Дата: Понедельник, 31.10.2016, 11:47 |
Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Большое спасибо! Сейчас попробую.
Большое спасибо! Сейчас попробую.qwertpet
Ответить
Сообщение Большое спасибо! Сейчас попробую.Автор - qwertpet Дата добавления - 31.10.2016 в 11:47
SLAVICK
Дата: Понедельник, 31.10.2016, 11:48 |
Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация:
766
±
Замечаний:
0% ±
2019
Можно макросом в лоб: [vba]Код
Sub d() lR = ActiveSheet.UsedRange.Rows.Count Range("b2:c" & lR).Copy Range("l2").PasteSpecial Paste:=xlPasteValues Range("E2:E" & lR).Copy Range("o2").PasteSpecial Paste:=xlPasteValues With ActiveSheet.Range("$l$1:$O$" & lR) .AutoFilter Field:=1, Criteria1:=Array("#Н/Д", "8888", "х"), Operator:=xlFilterValues .Offset(1, 0).SpecialCells(xlCellTypeVisible).ClearContents End With ActiveSheet.ShowAllData With ActiveSheet.AutoFilter.Sort .SortFields.Clear .SortFields.Add Key:=Range("L1:L" & lR), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub
[/vba]
Можно макросом в лоб: [vba]Код
Sub d() lR = ActiveSheet.UsedRange.Rows.Count Range("b2:c" & lR).Copy Range("l2").PasteSpecial Paste:=xlPasteValues Range("E2:E" & lR).Copy Range("o2").PasteSpecial Paste:=xlPasteValues With ActiveSheet.Range("$l$1:$O$" & lR) .AutoFilter Field:=1, Criteria1:=Array("#Н/Д", "8888", "х"), Operator:=xlFilterValues .Offset(1, 0).SpecialCells(xlCellTypeVisible).ClearContents End With ActiveSheet.ShowAllData With ActiveSheet.AutoFilter.Sort .SortFields.Clear .SortFields.Add Key:=Range("L1:L" & lR), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub
[/vba] SLAVICK
Иногда все проще чем кажется с первого взгляда.
Ответить
Сообщение Можно макросом в лоб: [vba]Код
Sub d() lR = ActiveSheet.UsedRange.Rows.Count Range("b2:c" & lR).Copy Range("l2").PasteSpecial Paste:=xlPasteValues Range("E2:E" & lR).Copy Range("o2").PasteSpecial Paste:=xlPasteValues With ActiveSheet.Range("$l$1:$O$" & lR) .AutoFilter Field:=1, Criteria1:=Array("#Н/Д", "8888", "х"), Operator:=xlFilterValues .Offset(1, 0).SpecialCells(xlCellTypeVisible).ClearContents End With ActiveSheet.ShowAllData With ActiveSheet.AutoFilter.Sort .SortFields.Clear .SortFields.Add Key:=Range("L1:L" & lR), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub
[/vba] Автор - SLAVICK Дата добавления - 31.10.2016 в 11:48
_Boroda_
Дата: Понедельник, 31.10.2016, 11:52 |
Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16888
Репутация:
6611
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
Не совсем понял, так?Код
=ЕСЛИОШИБКА(ИНДЕКС(B$1:B$99;НАИМЕНЬШИЙ(ЕСЛИ(ЕСЛИОШИБКА(($B$2:$B$99<>"х")*($B$2:$B$99<>8888);99);СТРОКА($B$2:$B$99));СТРОКА(L1)));"")
Не совсем понял, так?Код
=ЕСЛИОШИБКА(ИНДЕКС(B$1:B$99;НАИМЕНЬШИЙ(ЕСЛИ(ЕСЛИОШИБКА(($B$2:$B$99<>"х")*($B$2:$B$99<>8888);99);СТРОКА($B$2:$B$99));СТРОКА(L1)));"")
_Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Не совсем понял, так?Код
=ЕСЛИОШИБКА(ИНДЕКС(B$1:B$99;НАИМЕНЬШИЙ(ЕСЛИ(ЕСЛИОШИБКА(($B$2:$B$99<>"х")*($B$2:$B$99<>8888);99);СТРОКА($B$2:$B$99));СТРОКА(L1)));"")
Автор - _Boroda_ Дата добавления - 31.10.2016 в 11:52