Запись значений при вводе даты

Автор hohlov01, 19 января 2022, 17:13

0 Пользователи и 1 гость просматривают эту тему.

hohlov01

Имеется файл с 2 листами. На листе «За сутки» ежедневно вносится информация по текущей дате.
Необходимо чтоб при вводе даты на листе «За сутки» в ячейки «Е3», данные копировались на лист «ИТОГ» в соответствующие ячейки согласно введенной даты на листе «За сутки»
Пробовал реализовать это с помощью формул, но при изменении даты в ячейку «E3» на листе «За сутки», данные за прошедшие сутки не сохраняются.

Подскажите пожалуйста как это можно реализовать в Calc?

eeigor

#1
А что означают значения:
1-21
2-21
?

Вообще, у Вас данные попадают под стандартный анализ в сводной таблице. Но надо изменить порядок ввода данных на первом листе (реорганизовать лист). Вы готовы к этому? Или будем "городить огород"?

Дата  |  Компания  |  Категория  |  Товар  |  Количество

И далее общим списком... Вот это и есть исходные данные для сводной таблицы и других средств анализа данных (их несколько).
Понятие "записи" (или кортежа) в базе данных Вам знакомо? Никаких итогов.

И на 1-м листе будет не "за сутки", а за всё время от "царя Гороха". Одна большая "куча". И вот с такой кучей легко справляется сводная таблица.
Это решение не требует формул, программирования* и пр. Но надо научиться работать со сводной таблицей: с её макетом, фильтрами и т. д. И оно того стоит.
Сейчас Вы мыслите неверно, простите за прямоту.

Приведите пример одной такой записи, приближенный к реальности (пример).

* Тут я соврал. Но я помогу с реализацией, если нужно.


Updated:
Я загрузил пример сказанного. Схематично. Не автоматизировано. Смотрите только на предлагаемую форму решения. Примите во внимание некоторое "неудобство" диапазона данных, в котором присутствует их (данных) избыточность. LO Calc предлагает определённую функциональность по упрощению ввода данных, с которой надо познакомиться и пр. Измените исходные данные (в таблице), сводная таблица обновится автоматически. Используются макросы. Они должны быть доступны у Вас.

Причём той форме, что в файле, предпочтительнее другая форма макета: итоги сверху.
См. скриншот (Display Options)
Ubuntu 18.04 LTS • LibreOffice 7.5.1.2 Community

hohlov01

#2
Цитата: eeigor от 19 января 2022, 18:29Но надо изменить порядок ввода данных на первом листе (реорганизовать лист). Вы готовы к этому? Или будем "городить огород"?
Да, готов  к любым изменениям.

Цитата: eeigor от 19 января 2022, 18:29Никаких итогов.
Я понял. Учту на будущее.

Цитата: eeigor от 19 января 2022, 18:29Измените исходные данные (в таблице), сводная таблица обновится автоматически.
Да, все работает.
Сводная таблица автоматически обновляется за счет "именованных диапазонов" или за счет макроса?

Цитата: eeigor от 19 января 2022, 18:29Причём той форме, что в файле, предпочтительнее другая форма макета: итоги сверху.
Ваша форма на листе "Данные" меня полностью устраивает.
Да, согласен, итоги сверху очень удобно.

Цитата: eeigor от 19 января 2022, 18:29Используются макросы. Они должны быть доступны у Вас.
Видел в Вашем файле 2 макроса. Только не знаю работают они или нет. Жму команду "выполнить", но ничего не происходит.
LibreOffice Community Version: 7.2.5.2

P.S.
Познакомился с функцией "АГРЕГАТ" :), за что Вам большое спасибо, раньше считал с функциями СЧЁТЕСЛИ и СЧЁТЕСЛИМН.

eeigor

#3
Сводная таблица (СТ) обновляется макросом при активации листа, на котором она расположена. При запуске макроса вручную происходит обновление СТ, но при выборе листа макрос будет выполнен снова. СТ должна расти не вправо, а вниз: поле Дата следует перенести из области столбцов в область строк. Тогда данные можно будет сгруппировать по датам: за неделю, месяц, квартал, год – как угодно. Вам нужны итоги за день под рукой? Если нет, то за день можно посмотреть в СТ.

Сообщите о цели приложения*, дайте более реалистичный пример данных на примере одной записи. Уточните заголовки столбцов (полей), смысл поля Категория (я это только предположил). Как назвали бы их Вы?
_____
   * Как будто продавец в небольшом магазине (на точке) ведёт свой учёт отпущенного товара (в тетрадке).

Ваша квалификация выше, чем я полагал сначала. Вы работали с расширенным фильтром, знаете про регулярные выражения? Фильтрация на листе Данные позволит отвечать на все текущие вопросы и получать итоги за отфильтрованный набор данных, не трогая СТ (её можно перестраивать по потребности, но это неудобно, и можно создать вторую СТ с другим представлением).

Я говорил про итоги сверху в СТ на листе Сводка. Устанавливается выбором макета (layout). Исчезает отдельная строка итогов за компанию, повышается читабельность. На листе Данные итоги тоже сверху, внизу – ввод данных, и там должна быть кнопка Добавить, вставляющая новую запись с авторасширением (важно!) диапазона данных.

АГРЕГАТ сама обрабатывает ошибки и главное – пропускает скрытые фильтром записи (2-й параметр:=5). В примере предполагается использование расширенного фильтра.

Теперь данные содержат все данные (хранятся в "куче" в одном месте). Это облегчает их обработку и анализ, но "затрудняет" ввод: налицо избыточность данных. Руки оператора – источник ошибок! Поэтому надо свести к минимуму ввод ключевых данных с клавиатуры. Нужны списки валидации для выбора наименований компаний, товаров. Насколько много таких наименований?
Ubuntu 18.04 LTS • LibreOffice 7.5.1.2 Community

hohlov01

Цитата: eeigor от 20 января 2022, 02:33СТ должна расти не вправо, а вниз: поле Дата следует перенести из области столбцов в область строк. Тогда данные можно будет сгруппировать по датам: за неделю, месяц, квартал, год – как угодно.
Согласен, в новом файле попробовал реализовать это.

Цитата: eeigor от 20 января 2022, 02:33Вам нужны итоги за день под рукой?
Да, нужны. Это было бы очень удобно для меня.

Цитата: eeigor от 20 января 2022, 02:33Сообщите о цели приложения*, дайте более реалистичный пример данных на примере одной записи.
Цель приложения - автоматизация учета данных, в первую очередь за сутки. К сожалению реалистичный пример приложить не могу. Это только модель приложения, которую планирую реализовать в будущем. Поэтому готов к любым реорганизациям листов.

Цитата: eeigor от 20 января 2022, 02:33Уточните заголовки столбцов (полей), смысл поля Категория (я это только предположил). Как назвали бы их Вы?
"Наименование" - подразумевает название компаний. Максимальное количество будет 15.
"Категории" - Максимальное количество в данном заголовке будет 3 наименования.
"Товар" - Максимальное количество в данном заголовке также будет 3 наименования.

Цитата: eeigor от 20 января 2022, 02:33Вы работали с расширенным фильтром, знаете про регулярные выражения?
К сожалению нет. Пока пользовался только "автофильтром". Пока с расширенным фильтром еще не разобрался. Про регулярные выражения слышал, но в работе еще не использовал.

Цитата: eeigor от 20 января 2022, 02:33должна быть кнопка Добавить, вставляющая новую запись с авторасширением (важно!) диапазона данных.
Это было бы очень удобно.

Цитата: eeigor от 20 января 2022, 02:33Руки оператора – источник ошибок! Поэтому надо свести к минимуму ввод ключевых данных с клавиатуры.
Полностью согласен! :)

Цитата: eeigor от 20 января 2022, 02:33Нужны списки валидации для выбора наименований компаний, товаров. Насколько много таких наименований?
Попробовал реализовать данный пункт в своем файле.

eeigor

#5
Цитата: hohlov01 от 20 января 2022, 11:08Цель приложения - автоматизация учета данных, в первую очередь за сутки.
Ну, суть "категории" мне понятна, и наименование, по-видимому, - это подразделение. Путь будет так.
Поясните, кроме итогов за день, какая в перспективе статистика Вам потребуется. Выдал и забыл? Или сколько за период, кому и что... Данные надо накапливать?

Цитата: hohlov01 от 20 января 2022, 11:08Попробовал реализовать данный пункт в своем файле.
Я всё увидел. Если списки такие небольшие и наименования меняются редко, а сами списки нигде больше не нужны, то можно и так, то есть не хранить их на отдельном листе, скажем "Настройки".

Диапазон данных не содержит других - вычисляемых - полей, кроме вышеупомянутых?
Ubuntu 18.04 LTS • LibreOffice 7.5.1.2 Community

hohlov01

Цитата: eeigor от 20 января 2022, 18:15Поясните, кроме итогов за день, какая в перспективе статистика Вам потребуется.
Итоги за неделю по каждому подразделению и итоги за месяц по каждому подразделению.

Цитата: eeigor от 20 января 2022, 18:15Данные надо накапливать?
Да.

eeigor

Немного подождите. Я сделаю.
Ubuntu 18.04 LTS • LibreOffice 7.5.1.2 Community