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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 17.06.2008, 11:50   #11
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

SAS888 согласен - красиво. Максимальная автоматизация данной задачи.

Валерий, "формульный" вариант этого же решения:
Код:
=ДЕНЬ(КОНМЕСЯЦА(ДАТАЗНАЧ("1-"&ПСТР(ЯЧЕЙКА("имяфайла");ПОИСК("[";ЯЧЕЙКА("имяфайла"))+1;ПОИСК(".xls]";ЯЧЕЙКА("имяфайла"))-ПОИСК("[";ЯЧЕЙКА("имяфайла"))-1)&"-"&ГОД(СЕГОДНЯ()));0))
Если файл называется как месяц или трехбуквенное сокращение названия месяца (январь, янв, февраль, фев, март, мар и т.д. до январь, янв) то эта функция вернет последний день указанного месяца для текущего года.
Если в имени файла есть какие-либо другие символы формула вернет #ЗНАЧ!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума
Старый 17.06.2008, 12:51   #12
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Обнаружилась интересная особенность работы предложенной формулы. Собственно не самой формулы , а функции ЯЧЕЙКА("имяфайла"), входящей в формулу. Оказалось ЯЧЕЙКА("имяфайла") возвращает не имя файла, которому принадлежит данная ячейка, а имя активного в данный момент файла Эксель.
Т.е. ситуация такая:
у меня был открыт файл "февраль", я видел, что в феврале 29 дней. Открыл новую книгу, внес там данные в ячейку, чтобы эксель пересчитал формулы, вернулся в книгу февраль, а там!... вместо красивого числа 29 описанное ранее #ЗНАЧ! (потому что новая книга еще никак не была названа и ЯЧЕЙКА("имяфайла") вернула пустую строку). Нажал F9 - все стало на свои места. Формульный вариант не жезнеспособен. Необходимо отследить событие "этот лист стал активным" и насильно запустить пересчет, тогда все будет автоматизировано. А к чему это все, если SAS888 уже написал, что нужно делать. Тут однозначная победа макросов. Собственно, не думаю что это для кого-то новость.

Полезного в моем сообщении было только то, что замеченная особенность не документирована. Теперь об этом знают все, кто дочитал до сюда. Отдельный вопрос пригодятся ли эти знания...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума
Старый 17.06.2008, 12:59   #13
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Но эту, "откопанную" Вами особенность можно с успехом использовать для красивого решения других задач!
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 17.06.2008, 13:19   #14
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
Полезного в моем сообщении было только то, что замеченная особенность не документирована. Теперь об этом знают все, кто дочитал до сюда. Отдельный вопрос пригодятся ли эти знания...
Цитата:
SAS888 Но эту, "откопанную" Вами особенность можно с успехом использовать для красивого решения других задач!
дааа....
за использование недокументированных возможностей мне как-то досталось на этом форуме...
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума
Старый 17.06.2008, 13:29   #15
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

VictorM, не кипятись. Что не запрещено, то разрешено.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 17.06.2008, 13:39   #16
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Что не запрещено, то разрешено.
Эт точно. Согласен.
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти и вывести все слова,у котоpых число гласных букв пpевышает число согласных. Briz Помощь студентам 2 11.05.2008 00:56
Ввести число N и определить делится ли оно без остатка на число M (VBA) Ivanich Microsoft Office Excel 7 24.04.2008 19:43
Число N, заменить одну из его цифр, чтобы получилось число, max близкое к некоторой степени двойки urgu_st Помощь студентам 13 23.10.2007 09:14
Преобразование даты в вещественное число nova-alex Общие вопросы Delphi 5 03.05.2007 10:51
ООП мое первое начало cross Общие вопросы Delphi 1 18.03.2007 21:58