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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2013, 03:00   #1
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию Как вернуть имя предыдущего месяца?

В яч. [a2] есть дата в таком формате 01-03-13
Нужно переменной присвоить имя предыдущего месяца.
x = [a2] и получить
x = Февраль
valerij вне форума Ответить с цитированием
Старый 14.03.2013, 03:18   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Код:
x = format(dateserial(2013,month(cdate([a2]))-1,1),"MMMM")
EducatedFool вне форума Ответить с цитированием
Старый 14.03.2013, 03:34   #3
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Код:
 X = Format(DateSerial(0, Month(Now), 0), "MMMM")
Ошибся немного,так правильно работает
Анализ,обработка данных Недорого

Последний раз редактировалось doober; 14.03.2013 в 03:37.
doober вне форума Ответить с цитированием
Старый 14.03.2013, 03:48   #4
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Код:
x = format(dateserial(2013,month(cdate([a2]))-1,1),"MMMM")
Цитата:
Сообщение от doober Посмотреть сообщение
Код:
 X = Format(DateSerial(0, Month(Now), 0), "MMMM")
Ошибся немного,так правильно работает
Всё ОК!!!
Спасибо.
Пара вопросов.

Сереж, я у Игоря вижу обращение к ячейки, а у тебя?
Игорь, а зачем 2013 повторять, если в яч. год уже есть?
Это я к тому, что в 2014 надо будет менять год?
Цитата:
dateserial(2013,month(cdate([a2])
ноль поставил и всё ОК.

Спасибо.

Последний раз редактировалось valerij; 14.03.2013 в 04:01.
valerij вне форума Ответить с цитированием
Старый 14.03.2013, 04:57   #5
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
Игорь, а зачем 2013 повторять, если в яч. год уже есть?
Поверь, так надо.
Код работает, - значит, все правильно написано)

Цитата:
Это я к тому, что в 2014 надо будет менять год?
Можешь поставить 2003 или 2223 год. Разницы нет.


PS: так и предполагал, что Валера подумает про ежегодную корректировку этого параметра.
Ещё думал написать 2000 - но, опять же, побоялся вопросов типа «а почему 2000 вместо 2013?»

Валера, ты по-прежнему ежегодно переписываешь свои макросы?
Мы, в отличие от тебя, никогда не пишем код, в который ежегодно надо вносить правки.
EducatedFool вне форума Ответить с цитированием
Старый 14.03.2013, 11:46   #6
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Поверь, так надо.
Код работает, - значит, все правильно написано)
Можешь поставить 2003 или 2223 год. Разницы нет.
Да, всё работает, поставил ноль, раз разницы нет, что бы не забыть.

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

А вот в др. частично правлю(каждый месяц) т. к. мы здесь уже пытались сделать, но не получилось.
Надоело - уж точно.
Так, что скоро ещё раз попытаюсь к Вам обратится.
Цитата:
Мы, в отличие от тебя, никогда не пишем код, в который ежегодно надо вносить правки.
Ну с одной стороны это хорошо, если задача стабильна проста и не меняется.
А если в режиме пользования возникают не предвиденные ? или меняются некоторые свойства условий(смена цен, наименований их порядок .....). Тогда как?
valerij вне форума Ответить с цитированием
Старый 14.03.2013, 12:07   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
или меняются некоторые свойства... Тогда как?
Однако с этим не поспоришь... например, если курс поменялся - надо программу переписывать
Валера, ты на правильном пути. удачи!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 14.03.2013, 12:21   #8
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
надо программу переписывать
Игорь, речь о правке программы.
Я же правлю, а не переписываю.

Чё та в поиске не могу найти старую свою тему.

Может удалили или плохо ищу.

После работы ещё раз в поиске всё просмотрю....
valerij вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Последнее число предыдущего месяца ins813 Общие вопросы Delphi 10 14.10.2012 23:12
Копировать данные с предыдущего месяца valerij Microsoft Office Excel 23 11.01.2011 18:57
В ячейке проставить название предыдущего месяца kzld Microsoft Office Excel 6 08.10.2010 11:30
Как вернуть Swithboard? Skolot Microsoft Office Access 4 08.06.2009 09:45
Зависимость чисел дней месяца от месяца valerij Microsoft Office Excel 10 14.11.2008 11:01