Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2015, 12:18   #1
Artem_Melekhin
Новичок
Джуниор
 
Регистрация: 31.03.2015
Сообщений: 3
По умолчанию Привязка макроса к датам

Здравствуйте.

Проблем сразу 2:
Во-первых, в VBA я полный гуманитарий и никогда с подобными вещами в целом не сталкивался.
Во-вторых - сам сабж.

Есть задача - надо начать вести учет запасов.
Что я сообразил:
Делаю календарик в Excel, руками прописываю даты.
При двойном клике на дату открывается другая книга (к которой прописан путь).
Суть в следующем:
Если пользователь кликает на сегодняшний день, то создается в другой книге (к ней прописан путь) новый лист, скопированный из последнего в этой книге.
Если кликает на прошедшую дату, например, 3 дня назад, то открывается та же самая книга, но лист, сформированный за тот день (ну, если в тот день формировали).

В общем, я с помощью гугла осилил основные команды с открытием новой книги и созданием листа, правда на этом всё.
Не могу понять, как создать условие сегодня/не сегодня.
Мне вроде подсказывали, что надо объявлять переменную, но я без помощи тут уже никак не могу додуматься сам.

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

Почему-то через сайт не получилось загрузить xlsm, так что залил на яндекс.диск

https://yadi.sk/i/lG8RUwuNfe5F2
Спасибо большое!
Artem_Melekhin вне форума Ответить с цитированием
Старый 31.03.2015, 12:46   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

а зачем все эти другие книги?
почему не хранить данные «нормально» - в виде одной таблички на одном листе одного файла?

а если так хочется календарь - его можно нарисовать на втором листе, и при щелчке по дате, будет активироваться лист с данными, и включаться фильр по столбцу ДАТА (чтобы отображались данные только за нужную дату)
EducatedFool вне форума Ответить с цитированием
Старый 31.03.2015, 13:04   #3
Artem_Melekhin
Новичок
Джуниор
 
Регистрация: 31.03.2015
Сообщений: 3
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
а зачем все эти другие книги?
почему не хранить данные «нормально» - в виде одной таблички на одном листе одного файла?

а если так хочется календарь - его можно нарисовать на втором листе, и при щелчке по дате, будет активироваться лист с данными, и включаться фильр по столбцу ДАТА (чтобы отображались данные только за нужную дату)
Здравствуйте, на самом деле, это просто идея, можно хранить все данные и "нормально".

Календарь там нужен в любом случае (скажем так, пользоваться будут девочки, которые даже с самим ПК строго на Вы, поэтому максимально наглядно и очевидно требуется сделать).

Но тогда вопрос в том, каким образом мне запихать все это в макрос, чтобы делалось автоматически (в том числе, при условии, что дата - сегодняшний день, должен открываться лист со скопированными данными из вчерашнего листа, на момент последней записи в нем).
Это все же и есть у меня основной затуп, т.к. остальное вроде и сам могу чуть что отредактировать или упростить как-то.
Artem_Melekhin вне форума Ответить с цитированием
Старый 31.03.2015, 13:15   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

абсолютно согласен с EducatedFool

следующим "головняком" у Вас будет как собрать какие-то итоги по всем этим листам
чтобы собрать сумму, например за год, нужно открыть 365 листов, скопипастить данные куда-то на один лист, главное, не сделать при этом ошибок,
или снова... писать макрос, которых Вы писать не умеете, который пробежится по листам и соберет эти данные

гораздо проще:
все на один лист у каждой записи колонка ДАТА, фильтр, над таблицей строка-две с формулами ПРОМЕЖУТОЧНЫЕ.ИТОГИ, когда применяете фильтр к данным, а в формулах всегда и сразу видите необходимые значения
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 31.03.2015, 13:54   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

и не надо о "бестолковых девочках"...
наличие ума (знаний) это индивидуальная особенность, а не половая
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 31.03.2015, 15:21   #6
Artem_Melekhin
Новичок
Джуниор
 
Регистрация: 31.03.2015
Сообщений: 3
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
и не надо о "бестолковых девочках"...
наличие ума (знаний) это индивидуальная особенность, а не половая
Вы читаете слишком между строк. Речь не о бестолковых девочках - это ваша фраза, к слову, зачем вы ее вообще прикрепили, я не совсем понимаю... Я лишь показал к чему мне необходимость конкретных данных.
За ответ выше спасибо.
Artem_Melekhin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi - Работа с макросами в Excel (Создание и привязка макроса к картинке) kekskeks Помощь студентам 2 21.05.2014 08:19
Привязка макроса к конкретной таблице DJTreeno Microsoft Office Word 18 24.06.2011 15:25
Создание кнопки и привязка макроса НеВа6464 Microsoft Office Excel 2 11.11.2009 20:57
Запуск макроса с параметрами из другого макроса Saladin Microsoft Office Excel 2 19.01.2009 09:43
Привязка макроса к кнопке VisuaL Microsoft Office Excel 7 10.05.2008 07:04