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

Вход

Регистрация

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

 

= Мир MS Excel/Заполнить таблицу значениями без пробелов - Мир MS Excel

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

Доброго дня, уважаемые форумчане.

Прошу помочь в решении следующей задачи:
Есть таблица со значениями, в которой могут меняться данные. Во второй таблице по условию производится выборка значений.
Не знаю, как решить две проблемы. Первая проблема - это то, что вторая таблица заполняется с пробелами. Вторая - это то, что во вторую таблицу значения надо занести на постоянной основе, т.е. при изменении значений в первой таблице значения во второй уже не должны меняться, а новые значения из первой таблицы, при изменении, должны заноситься ниже старых данных. В примере на первом листе это как сейчас, на втором - как надо. Возможно ли такое реализовать средствами Excel?
К сообщению приложен файл: 3699599.xlsx (15.6 Kb)


Сообщение отредактировал Новичёк - Воскресенье, 23.05.2021, 17:56
 
Ответить
СообщениеДоброго дня, уважаемые форумчане.

Прошу помочь в решении следующей задачи:
Есть таблица со значениями, в которой могут меняться данные. Во второй таблице по условию производится выборка значений.
Не знаю, как решить две проблемы. Первая проблема - это то, что вторая таблица заполняется с пробелами. Вторая - это то, что во вторую таблицу значения надо занести на постоянной основе, т.е. при изменении значений в первой таблице значения во второй уже не должны меняться, а новые значения из первой таблицы, при изменении, должны заноситься ниже старых данных. В примере на первом листе это как сейчас, на втором - как надо. Возможно ли такое реализовать средствами Excel?

Автор - Новичёк
Дата добавления - 23.05.2021 в 17:43
gling Дата: Воскресенье, 23.05.2021, 19:14 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2519
Репутация: 674 ±
Замечаний: 0% ±

2010
Здравствуйте. Попробуйте такую формулу массива на листе "Как есть"
Код
=ЕСЛИОШИБКА(ИНДЕКС(Таблица1[[#Все];[Значения]];НАИМЕНЬШИЙ(ЕСЛИ((Таблица1[Значения]<65)*(Таблица1[Значения]>35);9^9;СТРОКА(Таблица1[Значения]));СТРОКА(E1)));"")
К сообщению приложен файл: 0028092.xlsx (15.6 Kb)


ЯД-41001506838083

Сообщение отредактировал gling - Воскресенье, 23.05.2021, 19:14
 
Ответить
СообщениеЗдравствуйте. Попробуйте такую формулу массива на листе "Как есть"
Код
=ЕСЛИОШИБКА(ИНДЕКС(Таблица1[[#Все];[Значения]];НАИМЕНЬШИЙ(ЕСЛИ((Таблица1[Значения]<65)*(Таблица1[Значения]>35);9^9;СТРОКА(Таблица1[Значения]));СТРОКА(E1)));"")

Автор - gling
Дата добавления - 23.05.2021 в 19:14
Новичёк Дата: Понедельник, 24.05.2021, 22:47 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 121
Репутация: 2 ±
Замечаний: 0% ±

Хорошее решение, спасибо. Только проблема с фиксацией данных и заполнением таблицы новыми данными ниже старых остаётся. В данном решении данные просто меняются, а не дополняются. Может кто-нибудь подсказать решение?
 
Ответить
СообщениеХорошее решение, спасибо. Только проблема с фиксацией данных и заполнением таблицы новыми данными ниже старых остаётся. В данном решении данные просто меняются, а не дополняются. Может кто-нибудь подсказать решение?

Автор - Новичёк
Дата добавления - 24.05.2021 в 22:47
Новичёк Дата: Среда, 26.05.2021, 13:18 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 121
Репутация: 2 ±
Замечаний: 0% ±

Еще пару вопросов по примеру для понимания формулы:
9^9 - это для чего? Размер массива?
СТРОКА(E2) - значение вне таблицы. Пробовал менять на А2, результат тот же. Почему вынесено за таблицу?

А если в таблице "Значения" есть пробелы, возможно их пропускать при заполнении таблицы "Выбор по условию"?
К сообщению приложен файл: _0028092.xlsx (15.7 Kb)
 
Ответить
СообщениеЕще пару вопросов по примеру для понимания формулы:
9^9 - это для чего? Размер массива?
СТРОКА(E2) - значение вне таблицы. Пробовал менять на А2, результат тот же. Почему вынесено за таблицу?

А если в таблице "Значения" есть пробелы, возможно их пропускать при заполнении таблицы "Выбор по условию"?

Автор - Новичёк
Дата добавления - 26.05.2021 в 13:18
Serge_007 Дата: Среда, 26.05.2021, 13:46 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2748 ±
Замечаний: ±

Excel 2016
Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
9^9 - это для чего?
Это просто очень большое число, которое не используется пользователями в реальной жизни
Можете заменить, на, например, 9E+307

Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
СТРОКА(E2) - значение вне таблицы
Код
=СТРОКА(E2)
возвращает значение 2. Это значение никак не связано с таблицей

Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
Пробовал менять на А2, результат тот же
Да,
Код
=СТРОКА(A2)
так же возвращает значение 2. Столбец в ссылке не имеет значения

Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
Почему вынесено за таблицу?
Не вынесено, см. объяснения выше и справку по функции СТРОКА()


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
9^9 - это для чего?
Это просто очень большое число, которое не используется пользователями в реальной жизни
Можете заменить, на, например, 9E+307

Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
СТРОКА(E2) - значение вне таблицы
Код
=СТРОКА(E2)
возвращает значение 2. Это значение никак не связано с таблицей

Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
Пробовал менять на А2, результат тот же
Да,
Код
=СТРОКА(A2)
так же возвращает значение 2. Столбец в ссылке не имеет значения

Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
Почему вынесено за таблицу?
Не вынесено, см. объяснения выше и справку по функции СТРОКА()

Автор - Serge_007
Дата добавления - 26.05.2021 в 13:46
китин Дата: Среда, 26.05.2021, 13:49 | Сообщение № 6
Группа: Модераторы
Ранг: Экселист
Сообщений: 7013
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
попаразитировал на формуле gling, немного подправил ее.
Код
=ЕСЛИОШИБКА(ИНДЕКС(Таблица1[Значения];НАИМЕНЬШИЙ(ЕСЛИ((Таблица1[Значения]>=65)+(Таблица1[Значения]<=35);СТРОКА(Таблица1[Значения])-1);СТРОКА(A1)));0)

Формула массива. Вводится одновременным нажатием Ctrl+Shift+Enter
К сообщению приложен файл: 7838113.xlsx (15.9 Kb)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщениепопаразитировал на формуле gling, немного подправил ее.
Код
=ЕСЛИОШИБКА(ИНДЕКС(Таблица1[Значения];НАИМЕНЬШИЙ(ЕСЛИ((Таблица1[Значения]>=65)+(Таблица1[Значения]<=35);СТРОКА(Таблица1[Значения])-1);СТРОКА(A1)));0)

Формула массива. Вводится одновременным нажатием Ctrl+Shift+Enter

Автор - китин
Дата добавления - 26.05.2021 в 13:49
Новичёк Дата: Среда, 26.05.2021, 16:05 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 121
Репутация: 2 ±
Замечаний: 0% ±

Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
А если в таблице "Значения" есть пробелы, возможно их пропускать при заполнении таблицы "Выбор по условию"?


файл с примером приложен выше.


Сообщение отредактировал Новичёк - Среда, 26.05.2021, 16:06
 
Ответить
Сообщение
Цитата Новичёк, 26.05.2021 в 13:18, в сообщении № 4 ()
А если в таблице "Значения" есть пробелы, возможно их пропускать при заполнении таблицы "Выбор по условию"?


файл с примером приложен выше.

Автор - Новичёк
Дата добавления - 26.05.2021 в 16:05
Nic70y Дата: Четверг, 27.05.2021, 08:24 | Сообщение № 8
Группа: Друзья
Ранг: Экселист
Сообщений: 8712
Репутация: 2262 ±
Замечаний: 0% ±

Excel 2010
не совсем понял вашу формулировку,
вдруг правильно
[vba]
Код
Dim u
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("Таблица1")) Is Nothing Then
        If Target.Cells.Count > 1 Then
            MsgBox "По одной!"
            Exit Sub
        End If
        s = Target.Value
        'If s <> u And s > 65 Then
        If u = "" And s > 65 Then
            t = Cells(Rows.Count, "c").End(xlUp).Row
            f = Cells(Rows.Count, "c").End(xlUp).Value
            g = 1
            If f = "" Then g = 0
            Range("c" & t + g) = s
        End If
    End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    u = Target.Value
End Sub
[/vba]
К сообщению приложен файл: 3699599.xlsm (17.0 Kb)


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Четверг, 27.05.2021, 08:25
 
Ответить
Сообщениене совсем понял вашу формулировку,
вдруг правильно
[vba]
Код
Dim u
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("Таблица1")) Is Nothing Then
        If Target.Cells.Count > 1 Then
            MsgBox "По одной!"
            Exit Sub
        End If
        s = Target.Value
        'If s <> u And s > 65 Then
        If u = "" And s > 65 Then
            t = Cells(Rows.Count, "c").End(xlUp).Row
            f = Cells(Rows.Count, "c").End(xlUp).Value
            g = 1
            If f = "" Then g = 0
            Range("c" & t + g) = s
        End If
    End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    u = Target.Value
End Sub
[/vba]

Автор - Nic70y
Дата добавления - 27.05.2021 в 08:24
Новичёк Дата: Четверг, 27.05.2021, 14:23 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 121
Репутация: 2 ±
Замечаний: 0% ±

Всем, кто принял участие, большое спасибо.
Nic70y, а есть возможность сделать, что бы значения менялись при изменении не по одному, а пачкой, например через "копировать-вставить" или по изменению значений в сводной таблице? И второй вопрос: по условию в примере диапазон меньше 35 и больше 65. Возможно такое реализовать? К сожалению в VBA я ноль. Поэтому заранее прошу прощения, если спросил глупость.
 
Ответить
СообщениеВсем, кто принял участие, большое спасибо.
Nic70y, а есть возможность сделать, что бы значения менялись при изменении не по одному, а пачкой, например через "копировать-вставить" или по изменению значений в сводной таблице? И второй вопрос: по условию в примере диапазон меньше 35 и больше 65. Возможно такое реализовать? К сожалению в VBA я ноль. Поэтому заранее прошу прощения, если спросил глупость.

Автор - Новичёк
Дата добавления - 27.05.2021 в 14:23
Nic70y Дата: Пятница, 28.05.2021, 13:48 | Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 8712
Репутация: 2262 ±
Замечаний: 0% ±

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


ЮMoney 41001841029809
 
Ответить
СообщениеНовичёк, все возможно наверное,
но для этого надо знать подробности,
что, как, откуда, куда и зачем.

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

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