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

Вход

Регистрация

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

 

= Мир MS Excel/Поиск и добавление данных по условию - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск и добавление данных по условию (Формулы/Formulas)
Поиск и добавление данных по условию
ruiner2012 Дата: Понедельник, 26.11.2018, 07:45 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Приветствую. Возможно ли по условию добавлять данные?
Пример:
Если В Строке Найдется = 15.47, Тогда Добавить *На следующей строке после нахождения данных* "Определенные данные с другого листа" Конец Если;

Пример документа во вложении.
К сообщению приложен файл: 1765667.xlsx(10.9 Kb)


Сообщение отредактировал ruiner2012 - Понедельник, 26.11.2018, 07:53
 
Ответить
СообщениеПриветствую. Возможно ли по условию добавлять данные?
Пример:
Если В Строке Найдется = 15.47, Тогда Добавить *На следующей строке после нахождения данных* "Определенные данные с другого листа" Конец Если;

Пример документа во вложении.

Автор - ruiner2012
Дата добавления - 26.11.2018 в 07:45
китин Дата: Понедельник, 26.11.2018, 07:46 | Сообщение № 2
Группа: Модераторы
Ранг: Участник клуба
Сообщений: 5142
Репутация: 815 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
ruiner2012, поменяйте название темы, согласно Правил форума
[moder]исправлено


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538


Сообщение отредактировал китин - Понедельник, 26.11.2018, 09:03
 
Ответить
Сообщениеruiner2012, поменяйте название темы, согласно Правил форума
[moder]исправлено

Автор - китин
Дата добавления - 26.11.2018 в 07:46
китин Дата: Понедельник, 26.11.2018, 09:02 | Сообщение № 3
Группа: Модераторы
Ранг: Участник клуба
Сообщений: 5142
Репутация: 815 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
в какой строке? куда добавлять? вы бы нарисовали руками желаемый результат


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538
 
Ответить
Сообщениев какой строке? куда добавлять? вы бы нарисовали руками желаемый результат

Автор - китин
Дата добавления - 26.11.2018 в 09:02
ruiner2012 Дата: Понедельник, 26.11.2018, 09:21 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
в какой строке? куда добавлять? вы бы нарисовали руками желаемый результат



Нарисовал. Может более поможет понять, какого результат нужно добиться.
К сообщению приложен файл: 6994419.xlsx(14.5 Kb)


Сообщение отредактировал ruiner2012 - Понедельник, 26.11.2018, 09:23
 
Ответить
Сообщение
в какой строке? куда добавлять? вы бы нарисовали руками желаемый результат



Нарисовал. Может более поможет понять, какого результат нужно добиться.

Автор - ruiner2012
Дата добавления - 26.11.2018 в 09:21
Pelena Дата: Понедельник, 26.11.2018, 09:54 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 13295
Репутация: 2925 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
По Вашему примеру: в ячейку А5 формулу.
Код
=ЕСЛИ($B$4=15,53;Лист2!A1;Лист3!A1)
Или вариантов больше двух?


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеПо Вашему примеру: в ячейку А5 формулу.
Код
=ЕСЛИ($B$4=15,53;Лист2!A1;Лист3!A1)
Или вариантов больше двух?

Автор - Pelena
Дата добавления - 26.11.2018 в 09:54
ruiner2012 Дата: Понедельник, 26.11.2018, 10:59 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Или вариантов больше двух?

Немного больше чем два. Их 7.
 
Ответить
Сообщение
Или вариантов больше двух?

Немного больше чем два. Их 7.

Автор - ruiner2012
Дата добавления - 26.11.2018 в 10:59
ruiner2012 Дата: Понедельник, 26.11.2018, 11:04 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Пойду учить макросы, кажется без них не обойтись.
Попробую несколько условий.

Таблица идет
[vba]
Код

ЗДАНИИ
УСЛУГА
РАСЧЕТЫ ПО ТАРИФУ
ЗДАНИИ
УСЛУГА
РАСЧЕТЫ ПО ТАРИФУ
ЗДАНИИ
УСЛУГА
РАСЧЕТЫ ПО ТАРИФУ
[/vba]

И получается после каждого "УСЛУГА" должны быть наши расчеты. Подобное покажу в скрине, что получится должно.
К сообщению приложен файл: 4457662.jpg(76.1 Kb)
 
Ответить
СообщениеПойду учить макросы, кажется без них не обойтись.
Попробую несколько условий.

Таблица идет
[vba]
Код

ЗДАНИИ
УСЛУГА
РАСЧЕТЫ ПО ТАРИФУ
ЗДАНИИ
УСЛУГА
РАСЧЕТЫ ПО ТАРИФУ
ЗДАНИИ
УСЛУГА
РАСЧЕТЫ ПО ТАРИФУ
[/vba]

И получается после каждого "УСЛУГА" должны быть наши расчеты. Подобное покажу в скрине, что получится должно.

Автор - ruiner2012
Дата добавления - 26.11.2018 в 11:04
sboy Дата: Понедельник, 26.11.2018, 11:38 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 2224
Репутация: 631 ±
Замечаний: 0% ±

Excel 2010
покажу в скрине, что получится должно

Вы забыли показать самое главное :) Исходные данные
 
Ответить
Сообщение
покажу в скрине, что получится должно

Вы забыли показать самое главное :) Исходные данные

Автор - sboy
Дата добавления - 26.11.2018 в 11:38
ruiner2012 Дата: Понедельник, 26.11.2018, 12:27 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
1 Лист = Исходные данные
2 Лист = После выполнение Макроса или формулы
3-4 Листы = Исходные данные для выполнения задачи.

Пробовал Если, что то не получается. Не знаю как придумать, чтобы после нахождения этого тарифа, вставлялось на лист и не заменяло значения.
К сообщению приложен файл: 7943121.xlsx(20.9 Kb)
 
Ответить
Сообщение1 Лист = Исходные данные
2 Лист = После выполнение Макроса или формулы
3-4 Листы = Исходные данные для выполнения задачи.

Пробовал Если, что то не получается. Не знаю как придумать, чтобы после нахождения этого тарифа, вставлялось на лист и не заменяло значения.

Автор - ruiner2012
Дата добавления - 26.11.2018 в 12:27
ruiner2012 Дата: Понедельник, 26.11.2018, 13:36 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Я тут думаю, макрос наверное должен иметь структуру.

-Поиск в столбце B значения "14.59"/"11.96"
-Добавить строки после строки где найдена нужная цифра, в нашем случае 14.59 или 11.96.
-Если 14.59 - то 10 строк, если 11.96 - то 8 строк.
-После добавить значения в строки данные из нужных листов.

Возможно такое?
 
Ответить
СообщениеЯ тут думаю, макрос наверное должен иметь структуру.

-Поиск в столбце B значения "14.59"/"11.96"
-Добавить строки после строки где найдена нужная цифра, в нашем случае 14.59 или 11.96.
-Если 14.59 - то 10 строк, если 11.96 - то 8 строк.
-После добавить значения в строки данные из нужных листов.

Возможно такое?

Автор - ruiner2012
Дата добавления - 26.11.2018 в 13:36
ruiner2012 Дата: Вторник, 27.11.2018, 06:49 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Видимо нет, кто знает как это реализовать?
 
Ответить
СообщениеВидимо нет, кто знает как это реализовать?

Автор - ruiner2012
Дата добавления - 27.11.2018 в 06:49
sboy Дата: Вторник, 27.11.2018, 11:52 | Сообщение № 12
Группа: Друзья
Ранг: Старожил
Сообщений: 2224
Репутация: 631 ±
Замечаний: 0% ±

Excel 2010
Небольшим макросом можно реализовать. кнопка на листе данные
[vba]
Код
Sub ruiner()
Application.ScreenUpdating = False
    With Sheets("ДАННЫЕ")
        ilr = .Cells(.Rows.Count, 1).End(xlUp).Row
            For ilr = ilr To 4 Step -2
                n = Replace(CStr(.Cells(ilr, 2).Value), ",", ".")
                r = Sheets(n).Cells(1).CurrentRegion.Rows.Count
                Sheets(n).Cells(1).CurrentRegion.Copy
                .Cells(ilr + 1, 1).Insert xlShiftDown
                .Cells(ilr + 1, 3).Resize(r, 4).Value = Sheets(n).Cells(9).Resize(r, 1).Value
                .Cells(ilr, 3).Resize(1, 4).Copy
                .Cells(ilr + 1, 3).Resize(r, 4).PasteSpecial Paste:=xlPasteValues, Operation:=xlMultiply
            Next
    End With
Application.ScreenUpdating = True
End Sub
[/vba]
К сообщению приложен файл: 7943121-1-.xlsm(30.5 Kb)
 
Ответить
СообщениеНебольшим макросом можно реализовать. кнопка на листе данные
[vba]
Код
Sub ruiner()
Application.ScreenUpdating = False
    With Sheets("ДАННЫЕ")
        ilr = .Cells(.Rows.Count, 1).End(xlUp).Row
            For ilr = ilr To 4 Step -2
                n = Replace(CStr(.Cells(ilr, 2).Value), ",", ".")
                r = Sheets(n).Cells(1).CurrentRegion.Rows.Count
                Sheets(n).Cells(1).CurrentRegion.Copy
                .Cells(ilr + 1, 1).Insert xlShiftDown
                .Cells(ilr + 1, 3).Resize(r, 4).Value = Sheets(n).Cells(9).Resize(r, 1).Value
                .Cells(ilr, 3).Resize(1, 4).Copy
                .Cells(ilr + 1, 3).Resize(r, 4).PasteSpecial Paste:=xlPasteValues, Operation:=xlMultiply
            Next
    End With
Application.ScreenUpdating = True
End Sub
[/vba]

Автор - sboy
Дата добавления - 27.11.2018 в 11:52
ruiner2012 Дата: Вторник, 27.11.2018, 14:10 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Небольшим макросом можно реализовать. кнопка на листе данные


Ого, спасибо. Но почему считает где то, а где то просто ставит проценты? Видимо на столько плох, что даже прочитать не могу макрос. Просто не вижу даже похожих данных.
Макро2, Макрос3, Макрос4 используются как добавочные?
 
Ответить
Сообщение
Небольшим макросом можно реализовать. кнопка на листе данные


Ого, спасибо. Но почему считает где то, а где то просто ставит проценты? Видимо на столько плох, что даже прочитать не могу макрос. Просто не вижу даже похожих данных.
Макро2, Макрос3, Макрос4 используются как добавочные?

Автор - ruiner2012
Дата добавления - 27.11.2018 в 14:10
sboy Дата: Вторник, 27.11.2018, 14:20 | Сообщение № 14
Группа: Друзья
Ранг: Старожил
Сообщений: 2224
Репутация: 631 ±
Замечаний: 0% ±

Excel 2010
Но почему считает где то, а где то просто ставит проценты?

У Вас проценты в листах с подстановочными данными были как текст. Исправил в листах
Макро2, Макрос3, Макрос4 используются как добавочные?

нет, это я рекордер включал, забыл удалить. (удалил)
К сообщению приложен файл: 4995841.xlsm(29.1 Kb)
 
Ответить
Сообщение
Но почему считает где то, а где то просто ставит проценты?

У Вас проценты в листах с подстановочными данными были как текст. Исправил в листах
Макро2, Макрос3, Макрос4 используются как добавочные?

нет, это я рекордер включал, забыл удалить. (удалил)

Автор - sboy
Дата добавления - 27.11.2018 в 14:20
ruiner2012 Дата: Вторник, 27.11.2018, 14:44 | Сообщение № 15
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016

нет, это я рекордер включал, забыл удалить. (удалил)


Я наверное самый наглый который здесь был, можете помочь прочитать? Или как добавить другие тарифы? Кроме 14.59 и др? Это же понимаю, что нужно дописать скорее всего макрос.
Скажите хоть свой кошелек в лс или карту. Чтобы уж не за просто так.
 
Ответить
Сообщение

нет, это я рекордер включал, забыл удалить. (удалил)


Я наверное самый наглый который здесь был, можете помочь прочитать? Или как добавить другие тарифы? Кроме 14.59 и др? Это же понимаю, что нужно дописать скорее всего макрос.
Скажите хоть свой кошелек в лс или карту. Чтобы уж не за просто так.

Автор - ruiner2012
Дата добавления - 27.11.2018 в 14:44
sboy Дата: Вторник, 27.11.2018, 14:51 | Сообщение № 16
Группа: Друзья
Ранг: Старожил
Сообщений: 2224
Репутация: 631 ±
Замечаний: 0% ±

Excel 2010
Или как добавить другие тарифы?

Аналогично, создайте листы и назовите их соответственно
 
Ответить
Сообщение
Или как добавить другие тарифы?

Аналогично, создайте листы и назовите их соответственно

Автор - sboy
Дата добавления - 27.11.2018 в 14:51
ruiner2012 Дата: Вторник, 27.11.2018, 14:56 | Сообщение № 17
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Аналогично, создайте листы и назовите их соответственно


Хорошо, спасибо. Попробую
 
Ответить
Сообщение
Аналогично, создайте листы и назовите их соответственно


Хорошо, спасибо. Попробую

Автор - ruiner2012
Дата добавления - 27.11.2018 в 14:56
ruiner2012 Дата: Среда, 28.11.2018, 08:01 | Сообщение № 18
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Это снова я, такой вопрос. Решил попробовать на большом отчете, где больше тарифов и данных. Выдает ошибку и ссылается на "r = Sheets(n).Cells(1).CurrentRegion.Rows.Count" в debug.
Данные не корректны получаются? Что то я криворукий какой то :(
К сообщению приложен файл: 3666411.xlsm(51.5 Kb)


Сообщение отредактировал ruiner2012 - Среда, 28.11.2018, 08:01
 
Ответить
СообщениеЭто снова я, такой вопрос. Решил попробовать на большом отчете, где больше тарифов и данных. Выдает ошибку и ссылается на "r = Sheets(n).Cells(1).CurrentRegion.Rows.Count" в debug.
Данные не корректны получаются? Что то я криворукий какой то :(

Автор - ruiner2012
Дата добавления - 28.11.2018 в 08:01
ruiner2012 Дата: Среда, 28.11.2018, 08:24 | Сообщение № 19
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Методом проб и ошибок , видимо нашел в чем подвох. Нельзя значит чтобы сразу 2 услуги в доме было, только по одной.
 
Ответить
СообщениеМетодом проб и ошибок , видимо нашел в чем подвох. Нельзя значит чтобы сразу 2 услуги в доме было, только по одной.

Автор - ruiner2012
Дата добавления - 28.11.2018 в 08:24
sboy Дата: Среда, 28.11.2018, 10:46 | Сообщение № 20
Группа: Друзья
Ранг: Старожил
Сообщений: 2224
Репутация: 631 ±
Замечаний: 0% ±

Excel 2010
нашел в чем подвох

Просто этого подвоха в примере не было :)
Поправил и добавил обработку ошибки, если листа с данными нет, то пропускаем.
К сообщению приложен файл: 6993797.xlsm(52.9 Kb)
 
Ответить
Сообщение
нашел в чем подвох

Просто этого подвоха в примере не было :)
Поправил и добавил обработку ошибки, если листа с данными нет, то пропускаем.

Автор - sboy
Дата добавления - 28.11.2018 в 10:46
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Поиск и добавление данных по условию (Формулы/Formulas)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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