Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Автомат.перенос строк в другую таблицу по заданным правилам - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Автомат.перенос строк в другую таблицу по заданным правилам (Формулы/Formulas)
Автомат.перенос строк в другую таблицу по заданным правилам
qwertpet Дата: Понедельник, 31.10.2016, 10:36 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Есть две таблички. Требуется перенести данные из левой в правую так, чтобы перенеслись только строки, не содержащие х и 8888 по столбцу А. Можно ли это как-то сделать автоматически? Чтобы не нужно было каждый раз выбирать фильтром и копипастить? Пример прилагаю.
К сообщению приложен файл: 1044894.xlsx(24Kb)


Сообщение отредактировал qwertpet - Понедельник, 31.10.2016, 10:38
 
Ответить
СообщениеЕсть две таблички. Требуется перенести данные из левой в правую так, чтобы перенеслись только строки, не содержащие х и 8888 по столбцу А. Можно ли это как-то сделать автоматически? Чтобы не нужно было каждый раз выбирать фильтром и копипастить? Пример прилагаю.

Автор - qwertpet
Дата добавления - 31.10.2016 в 10:36
Michael_S Дата: Понедельник, 31.10.2016, 11:08 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1687
Репутация: 327 ±
Замечаний: 0% ±

Excel2016
Формулами, или макросом?
Если формулами, то необходимо сначала избавиться от ошибок (#Н/Д).
формулу ВПР(....) дополните:
Код
ЕСЛИОШИБКА(ВПР(....);"")

И тогда как-то так
К сообщению приложен файл: 8074397.xlsx(24Kb)


ЯД: 41001136675053
WM: R389613894253
 
Ответить
СообщениеФормулами, или макросом?
Если формулами, то необходимо сначала избавиться от ошибок (#Н/Д).
формулу ВПР(....) дополните:
Код
ЕСЛИОШИБКА(ВПР(....);"")

И тогда как-то так

Автор - Michael_S
Дата добавления - 31.10.2016 в 11:08
qwertpet Дата: Понедельник, 31.10.2016, 11:47 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
И тогда как-то так


Большое спасибо! Сейчас попробую.
 
Ответить
Сообщение
И тогда как-то так


Большое спасибо! Сейчас попробую.

Автор - qwertpet
Дата добавления - 31.10.2016 в 11:47
SLAVICK Дата: Понедельник, 31.10.2016, 11:48 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 1834
Репутация: 613 ±
Замечаний: 0% ±

2007,2010,2013,2016
Можно макросом в лоб:
[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]
К сообщению приложен файл: 1044894-2-.xlsm(34Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеМожно макросом в лоб:
[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
Группа: Модераторы
Ранг: Экселист
Сообщений: 9347
Репутация: 3922 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Не совсем понял, так?
Код
=ЕСЛИОШИБКА(ИНДЕКС(B$1:B$99;НАИМЕНЬШИЙ(ЕСЛИ(ЕСЛИОШИБКА(($B$2:$B$99<>"х")*($B$2:$B$99<>8888);99);СТРОКА($B$2:$B$99));СТРОКА(L1)));"")
К сообщению приложен файл: 1044894_1.xlsx(24Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
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
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Автомат.перенос строк в другую таблицу по заданным правилам (Формулы/Formulas)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!