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

Вход

Регистрация

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

 

= Мир MS Excel/Вывод значения из ячейки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Вывод значения из ячейки (Формулы/Formulas)
Вывод значения из ячейки
Jovsen Дата: Вторник, 24.01.2017, 07:41 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Здравствуйте! Столкнулся с проблемой. Есть таблица, хочу сделать на отдельном листе вывод информации по условиям. В таблице много пустых ячеек, мне необходимо:
1. Я указываю условие.
2. Как впр он проверяет строку.
3. Если значение не пустое выводит заголовок столбца.
4. И так пока все не выведет (больше 6 значений не бывает, так что максимум 6 ячеек вывода.
Мне бы хватило и ВПР, но таблица вывода будет сильно нечитаема.
Или может подскажете формулу при которой если в 3 смежных столбцах на одной строке ячейки пустые, то строку скрыть? Это более простой вариант для моей проблемы)
Заранее спасибо! ^_^
К сообщению приложен файл: 0242479.xlsx (24.4 Kb)


Сообщение отредактировал Jovsen - Вторник, 24.01.2017, 08:10
 
Ответить
СообщениеЗдравствуйте! Столкнулся с проблемой. Есть таблица, хочу сделать на отдельном листе вывод информации по условиям. В таблице много пустых ячеек, мне необходимо:
1. Я указываю условие.
2. Как впр он проверяет строку.
3. Если значение не пустое выводит заголовок столбца.
4. И так пока все не выведет (больше 6 значений не бывает, так что максимум 6 ячеек вывода.
Мне бы хватило и ВПР, но таблица вывода будет сильно нечитаема.
Или может подскажете формулу при которой если в 3 смежных столбцах на одной строке ячейки пустые, то строку скрыть? Это более простой вариант для моей проблемы)
Заранее спасибо! ^_^

Автор - Jovsen
Дата добавления - 24.01.2017 в 07:41
китин Дата: Вторник, 24.01.2017, 07:43 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 7013
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
формулы строки не скрывают. вам в VBA. таков ответ без файла примера


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщениеформулы строки не скрывают. вам в VBA. таков ответ без файла примера

Автор - китин
Дата добавления - 24.01.2017 в 07:43
sboy Дата: Вторник, 24.01.2017, 11:46 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
Вот такой вариант можно, скрывать пустые фильтром)
Формула для таблицы
Код
=ИНДЕКС(Справочник!$B$2:$H$8;ПОИСКПОЗ(B$2;Справочник!$A$2:$A$8;);ПОИСКПОЗ($A4&"";(Справочник!$B$1:$H$1);))

формула в УФ, и фильтр по цвету "без заливки"
Код
=И($B4=0;$C4=0;$D4=0)
К сообщению приложен файл: 6447797.xlsx (25.5 Kb)


Яндекс: 410016850021169
 
Ответить
СообщениеДобрый день.
Вот такой вариант можно, скрывать пустые фильтром)
Формула для таблицы
Код
=ИНДЕКС(Справочник!$B$2:$H$8;ПОИСКПОЗ(B$2;Справочник!$A$2:$A$8;);ПОИСКПОЗ($A4&"";(Справочник!$B$1:$H$1);))

формула в УФ, и фильтр по цвету "без заливки"
Код
=И($B4=0;$C4=0;$D4=0)

Автор - sboy
Дата добавления - 24.01.2017 в 11:46
Jovsen Дата: Вторник, 24.01.2017, 12:49 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо! Как вариант, но в данном случае фильтр придется применять постоянно вручную, и сбрасывать его. А я бы хотел чтоб это было без постороннего вмешательства. Выбрали необходимые номера из выпадающего списка и все. (Коллеги в разной степени владеют excel, и для некоторых это будет сложно)
 
Ответить
СообщениеСпасибо! Как вариант, но в данном случае фильтр придется применять постоянно вручную, и сбрасывать его. А я бы хотел чтоб это было без постороннего вмешательства. Выбрали необходимые номера из выпадающего списка и все. (Коллеги в разной степени владеют excel, и для некоторых это будет сложно)

Автор - Jovsen
Дата добавления - 24.01.2017 в 12:49
sboy Дата: Вторник, 24.01.2017, 13:33 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Тогда с помощью VBA
[vba]
Код
Private Sub Worksheet_Calculate()
For x = 4 To Cells(Rows.Count, 1).End(xlUp).Row
    If Cells(x, 2).Value + Cells(x, 3).Value + Cells(x, 4).Value = 0 Then
    Rows(x).Hidden = True
    End If
Next x
End Sub
[/vba]
К сообщению приложен файл: 6447797.xlsm (31.8 Kb)


Яндекс: 410016850021169
 
Ответить
СообщениеТогда с помощью VBA
[vba]
Код
Private Sub Worksheet_Calculate()
For x = 4 To Cells(Rows.Count, 1).End(xlUp).Row
    If Cells(x, 2).Value + Cells(x, 3).Value + Cells(x, 4).Value = 0 Then
    Rows(x).Hidden = True
    End If
Next x
End Sub
[/vba]

Автор - sboy
Дата добавления - 24.01.2017 в 13:33
Jovsen Дата: Вторник, 24.01.2017, 13:39 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Практически идеально, только потом при смене номера строки не возвращаются
 
Ответить
СообщениеПрактически идеально, только потом при смене номера строки не возвращаются

Автор - Jovsen
Дата добавления - 24.01.2017 в 13:39
sboy Дата: Вторник, 24.01.2017, 15:05 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Добавил
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Set rR = Range("B2:D2")
If Intersect(Target, rR) Is Nothing Then Exit Sub
UsedRange.Rows.EntireRow.Hidden = False
End Sub
[/vba]
К сообщению приложен файл: 6447797-1-.xlsm (33.1 Kb)


Яндекс: 410016850021169
 
Ответить
СообщениеДобавил
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Set rR = Range("B2:D2")
If Intersect(Target, rR) Is Nothing Then Exit Sub
UsedRange.Rows.EntireRow.Hidden = False
End Sub
[/vba]

Автор - sboy
Дата добавления - 24.01.2017 в 15:05
Jovsen Дата: Среда, 25.01.2017, 05:19 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Большое спасибо, вопрос решен! hands
 
Ответить
СообщениеБольшое спасибо, вопрос решен! hands

Автор - Jovsen
Дата добавления - 25.01.2017 в 05:19
Jovsen Дата: Среда, 25.01.2017, 11:47 | Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Собрал таблицу,возникла проблема, визуально он все делает, но зависает :(
 
Ответить
СообщениеСобрал таблицу,возникла проблема, визуально он все делает, но зависает :(

Автор - Jovsen
Дата добавления - 25.01.2017 в 11:47
sboy Дата: Среда, 25.01.2017, 12:02 | Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Jovsen, Добрый день.
Видимо оба события в цикл попадают(
Приложите свою сборку, посмотрим


Яндекс: 410016850021169
 
Ответить
СообщениеJovsen, Добрый день.
Видимо оба события в цикл попадают(
Приложите свою сборку, посмотрим

Автор - sboy
Дата добавления - 25.01.2017 в 12:02
Jovsen Дата: Понедельник, 06.02.2017, 06:39 | Сообщение № 11
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Извините был в командировке. Добавил файл
К сообщению приложен файл: 6353877.xlsm (24.1 Kb)


Сообщение отредактировал Jovsen - Понедельник, 06.02.2017, 06:43
 
Ответить
СообщениеИзвините был в командировке. Добавил файл

Автор - Jovsen
Дата добавления - 06.02.2017 в 06:39
Jovsen Дата: Понедельник, 06.02.2017, 09:55 | Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Jovsen, Добрый день.
Видимо оба события в цикл попадают(
Приложите свою сборку, посмотрим


Извините был в командировке. Добавил файл
К сообщению приложен файл: 2476981.xlsm (24.1 Kb)
 
Ответить
Сообщение
Jovsen, Добрый день.
Видимо оба события в цикл попадают(
Приложите свою сборку, посмотрим


Извините был в командировке. Добавил файл

Автор - Jovsen
Дата добавления - 06.02.2017 в 09:55
Manyasha Дата: Понедельник, 06.02.2017, 11:04 | Сообщение № 13
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Jovsen, при скрытии/отображении строк запускается событие Worksheet_Calculate, поэтому, на время выполнения макроса, нужно отключить обработку событий.

И еще заметила, что, если строка на листе Вывод скрыта, а потом для нее внести данные на лист Жировая, то эта строка не отобразится, пока мы что-нибудь не поменяем в B1:E1 на листе Вывод.

Предлагаю при пересчете открывать нужные строки, тогда обработка события change не понадобится:
[vba]
Код
Private Sub Worksheet_Calculate()
    Application.EnableEvents = False
    For x = 5 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(x, 2).Value + Cells(x, 3).Value + Cells(x, 4).Value + Cells(x, 5).Value = 0 Then
            Rows(x).Hidden = True
        Else
            Rows(x).Hidden = False'Этого у Вас не было
        End If
    Next x
    Application.EnableEvents = True
End Sub
[/vba]
К сообщению приложен файл: 2476981-1.xlsm (24.9 Kb)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеJovsen, при скрытии/отображении строк запускается событие Worksheet_Calculate, поэтому, на время выполнения макроса, нужно отключить обработку событий.

И еще заметила, что, если строка на листе Вывод скрыта, а потом для нее внести данные на лист Жировая, то эта строка не отобразится, пока мы что-нибудь не поменяем в B1:E1 на листе Вывод.

Предлагаю при пересчете открывать нужные строки, тогда обработка события change не понадобится:
[vba]
Код
Private Sub Worksheet_Calculate()
    Application.EnableEvents = False
    For x = 5 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(x, 2).Value + Cells(x, 3).Value + Cells(x, 4).Value + Cells(x, 5).Value = 0 Then
            Rows(x).Hidden = True
        Else
            Rows(x).Hidden = False'Этого у Вас не было
        End If
    Next x
    Application.EnableEvents = True
End Sub
[/vba]

Автор - Manyasha
Дата добавления - 06.02.2017 в 11:04
Jovsen Дата: Понедельник, 06.02.2017, 11:31 | Сообщение № 14
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Manyasha, При изменении данных в вашем случае, строки не возвращаются(
 
Ответить
СообщениеManyasha, При изменении данных в вашем случае, строки не возвращаются(

Автор - Jovsen
Дата добавления - 06.02.2017 в 11:31
Manyasha Дата: Понедельник, 06.02.2017, 11:55 | Сообщение № 15
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Jovsen, я не обратила внимания на то, что если последняя строка скрыта, то
[vba]
Код
Cells(Rows.Count, 1).End(xlUp).Row
[/vba]
неверно считается. Добавьте перед циклом открытие всех строк:
[vba]
Код
UsedRange.Rows.EntireRow.Hidden = False
[/vba]


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеJovsen, я не обратила внимания на то, что если последняя строка скрыта, то
[vba]
Код
Cells(Rows.Count, 1).End(xlUp).Row
[/vba]
неверно считается. Добавьте перед циклом открытие всех строк:
[vba]
Код
UsedRange.Rows.EntireRow.Hidden = False
[/vba]

Автор - Manyasha
Дата добавления - 06.02.2017 в 11:55
Jovsen Дата: Вторник, 07.02.2017, 13:54 | Сообщение № 16
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Manyasha, Большое спасибо! hands
 
Ответить
СообщениеManyasha, Большое спасибо! hands

Автор - Jovsen
Дата добавления - 07.02.2017 в 13:54
asas Дата: Среда, 08.02.2017, 12:03 | Сообщение № 17
Группа: Пользователи
Ранг: Новичок
Сообщений: 30
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Здравствуйте! Столкнулся с проблемой. Есть таблица, хочу сделать выборку информации по условиям. В желтым цветом помеченных ячейках необходимо получить результат. Спасибо
К сообщению приложен файл: Naiti_znachenie.xls (31.0 Kb)
 
Ответить
СообщениеЗдравствуйте! Столкнулся с проблемой. Есть таблица, хочу сделать выборку информации по условиям. В желтым цветом помеченных ячейках необходимо получить результат. Спасибо

Автор - asas
Дата добавления - 08.02.2017 в 12:03
китин Дата: Среда, 08.02.2017, 12:14 | Сообщение № 18
Группа: Модераторы
Ранг: Экселист
Сообщений: 7013
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
asas, читайте правила


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщениеasas, читайте правила

Автор - китин
Дата добавления - 08.02.2017 в 12:14
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Вывод значения из ячейки (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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