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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.03.2012, 01:46   #1
ZolotkoMargo
Новичок
Джуниор
 
Регистрация: 20.03.2012
Сообщений: 2
Сообщение Excel VBA

Доброго времени суток.
Очень нужна ваша помощь.
Нужно написать в vba функцию КОНМЕСЯЦА,которая работала бы аналогично одноимённой встроенной функции Excel.
Буду очень благодарна.





КОНМЕСЯЦА в Microsoft Excel.
Описание

Возвращает порядковый номер последнего дня месяца, отстоящего на указанное количество месяцев от даты, указанной в аргументе "нач_дата". Функция КОНМЕСЯЦА используется для вычисления даты погашения или даты платежа, которая приходится на конец месяца.
Синтаксис
КОНМЕСЯЦА(нач_дата, число_месяцев)

Аргументыфункции КОНМЕСЯЦА описаны ниже.
Нач_дата — обязательный аргумент. Начальная дата. Даты должны быть введены с использованием функции ДАТА или как результат вычисления других формул и функций. Например, для указания даты 23 мая 2008 г. воспользуйтесь выражением ДАТА(2008;5;23). Если ввести даты как текст, это может привести к возникновению проблем.
Число_месяцев — обязательный аргумент. Количество месяцев до или после даты "нач_дата". Положительное значение аргумента "число_месяцев" означает будущие даты; отрицательное значение — прошедшие даты.

Примечание. Если значение аргумента "число_месяцев" не является целым числом, оно усекается.

Последний раз редактировалось ZolotkoMargo; 20.03.2012 в 01:49.
ZolotkoMargo вне форума Ответить с цитированием
Старый 20.03.2012, 08:36   #2
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Код:
Function Конец_Месяца(ByVal НачДата As Date, Optional Месяцев As Integer = 0) As Integer
  Dim DT As Date, Mesyac As Integer, Years As Integer
  Mesyac = Month(НачДата)
  Years = Year(НачДата)
  Mesyac = Mesyac + Месяцев
  While Mesyac <= 0
    Mesyac = Mesyac + 12
    Years = Years - 1
  Wend
  DT = DateSerial(Years, Mesyac + 1, 1) - 1
  Конец_Месяца = Day(DT)
End Function
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 21.03.2012, 23:03   #3
ZolotkoMargo
Новичок
Джуниор
 
Регистрация: 20.03.2012
Сообщений: 2
По умолчанию

Большое спасибо
ZolotkoMargo вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
VBA Excel .::pk::. Помощь студентам 2 14.05.2016 09:54
VBA Word,VBA Excel решить 2 задачи fafolo4ka Фриланс 6 05.03.2012 01:15
VBA Excel Oi-Man Помощь студентам 0 24.05.2011 12:36
VBA Excel Bombastick Microsoft Office Excel 10 25.12.2010 18:17
Как запретить запуск программы на VBA Excel 2003 в Excel 2007 kovalevskivf Microsoft Office Excel 2 15.05.2009 16:47