как присвоить textbox дату прошлого месяца?
Marr
Дата: Четверг, 07.05.2020, 14:16 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Добрый день. Подскажите пожалуйста. Выполняется такое действие- открывается форма пользователя и там в texbox автоматически присваивается вчерашняя дата. Посмотрите пожалуйста макрос, всё верно я сделал? И вот стало интересно, а как бы надо было сделать если мне нужна была дата прошлого месяца? Т.е. если сегодня 5 мая, то вывести 5 апреля. И, если сегодня 5 мая, а вывести 4 апреля ( т.е. -1 день и -1 месяц). Вот как сделать эти два варианта???? [vba]Код
Private Sub UserForm_Activate() TextBox1.Value = Format(Now - 1, "dd mmmm yyyy") End Sub
[/vba]
Добрый день. Подскажите пожалуйста. Выполняется такое действие- открывается форма пользователя и там в texbox автоматически присваивается вчерашняя дата. Посмотрите пожалуйста макрос, всё верно я сделал? И вот стало интересно, а как бы надо было сделать если мне нужна была дата прошлого месяца? Т.е. если сегодня 5 мая, то вывести 5 апреля. И, если сегодня 5 мая, а вывести 4 апреля ( т.е. -1 день и -1 месяц). Вот как сделать эти два варианта???? [vba]Код
Private Sub UserForm_Activate() TextBox1.Value = Format(Now - 1, "dd mmmm yyyy") End Sub
[/vba] Marr
Сообщение отредактировал Marr - Четверг, 07.05.2020, 14:21
Ответить
Сообщение Добрый день. Подскажите пожалуйста. Выполняется такое действие- открывается форма пользователя и там в texbox автоматически присваивается вчерашняя дата. Посмотрите пожалуйста макрос, всё верно я сделал? И вот стало интересно, а как бы надо было сделать если мне нужна была дата прошлого месяца? Т.е. если сегодня 5 мая, то вывести 5 апреля. И, если сегодня 5 мая, а вывести 4 апреля ( т.е. -1 день и -1 месяц). Вот как сделать эти два варианта???? [vba]Код
Private Sub UserForm_Activate() TextBox1.Value = Format(Now - 1, "dd mmmm yyyy") End Sub
[/vba] Автор - Marr Дата добавления - 07.05.2020 в 14:16
nilem
Дата: Четверг, 07.05.2020, 14:28 |
Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация:
563
±
Замечаний:
0% ±
Excel 2013, 2016
Marr , привет вот такой вариант: [vba]Код
Sub test() MsgBox DateSerial(Year(Date), Month(Date), Day(Date)) MsgBox DateSerial(Year(Date), Month(Date) - 1, Day(Date)) MsgBox DateSerial(Year(Date), Month(Date) - 1, Day(Date)) - 1 End Sub
[/vba]
Marr , привет вот такой вариант: [vba]Код
Sub test() MsgBox DateSerial(Year(Date), Month(Date), Day(Date)) MsgBox DateSerial(Year(Date), Month(Date) - 1, Day(Date)) MsgBox DateSerial(Year(Date), Month(Date) - 1, Day(Date)) - 1 End Sub
[/vba]nilem
Яндекс.Деньги 4100159601573
Ответить
Сообщение Marr , привет вот такой вариант: [vba]Код
Sub test() MsgBox DateSerial(Year(Date), Month(Date), Day(Date)) MsgBox DateSerial(Year(Date), Month(Date) - 1, Day(Date)) MsgBox DateSerial(Year(Date), Month(Date) - 1, Day(Date)) - 1 End Sub
[/vba]Автор - nilem Дата добавления - 07.05.2020 в 14:28
Апострофф
Дата: Четверг, 07.05.2020, 15:44 |
Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 458
Репутация:
126
±
Замечаний:
0% ±
Excel 1997
Ещё DATEADD можно помучить...
Ответить
Сообщение Ещё DATEADD можно помучить... Автор - Апострофф Дата добавления - 07.05.2020 в 15:44
Marr
Дата: Четверг, 07.05.2020, 19:50 |
Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
а в формате 05 мая 2020 как вывести в таком случае?
а в формате 05 мая 2020 как вывести в таком случае?Marr
Сообщение отредактировал Marr - Четверг, 07.05.2020, 20:24
Ответить
Сообщение а в формате 05 мая 2020 как вывести в таком случае?Автор - Marr Дата добавления - 07.05.2020 в 19:50
Pelena
Дата: Четверг, 07.05.2020, 20:08 |
Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 19404
Репутация:
4555
±
Замечаний:
±
Excel 365 & Mac Excel
Marr , не надо цитировать пост целиком, это нарушение Правил форума. исправьте
Marr , не надо цитировать пост целиком, это нарушение Правил форума. исправьтеPelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение Marr , не надо цитировать пост целиком, это нарушение Правил форума. исправьтеАвтор - Pelena Дата добавления - 07.05.2020 в 20:08
Апострофф
Дата: Четверг, 07.05.2020, 20:42 |
Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 458
Репутация:
126
±
Замечаний:
0% ±
Excel 1997
а в формате 05 мая 2020 как
[vba]Код
TextBox1.Value = Format(DateSerial(Year(Date), Month(Date) - 1, Day(Date)) - 1, "dd mmmm yyyy")
[/vba]-разве не очевидно?
а в формате 05 мая 2020 как
[vba]Код
TextBox1.Value = Format(DateSerial(Year(Date), Month(Date) - 1, Day(Date)) - 1, "dd mmmm yyyy")
[/vba]-разве не очевидно?Апострофф
Ответить
Сообщение а в формате 05 мая 2020 как
[vba]Код
TextBox1.Value = Format(DateSerial(Year(Date), Month(Date) - 1, Day(Date)) - 1, "dd mmmm yyyy")
[/vba]-разве не очевидно?Автор - Апострофф Дата добавления - 07.05.2020 в 20:42
Marr
Дата: Четверг, 07.05.2020, 20:43 |
Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Ещё DATEADD можно помучить...
попробовал.... получилось...хотелось бы узнать мнение профессионалов по моему подходу к решению задачи, насколько рационально? Теперь появился ещё вопрос )). Как в данном случае уменьшить месяц и год одновременно? т.е. если сегодня 5 мая 2020, как сделать 5 апреля 2019?? И всем спасибо за предыдущие ответы!!! [vba]Код
Private Sub UserForm_Activate() Dim a a = DateAdd("M", -1, Now) TextBox1.Value = Format(a, "dd mmmm yyyy") End Sub
[/vba]
Ещё DATEADD можно помучить...
попробовал.... получилось...хотелось бы узнать мнение профессионалов по моему подходу к решению задачи, насколько рационально? Теперь появился ещё вопрос )). Как в данном случае уменьшить месяц и год одновременно? т.е. если сегодня 5 мая 2020, как сделать 5 апреля 2019?? И всем спасибо за предыдущие ответы!!! [vba]Код
Private Sub UserForm_Activate() Dim a a = DateAdd("M", -1, Now) TextBox1.Value = Format(a, "dd mmmm yyyy") End Sub
[/vba]Marr
Ответить
Сообщение Ещё DATEADD можно помучить...
попробовал.... получилось...хотелось бы узнать мнение профессионалов по моему подходу к решению задачи, насколько рационально? Теперь появился ещё вопрос )). Как в данном случае уменьшить месяц и год одновременно? т.е. если сегодня 5 мая 2020, как сделать 5 апреля 2019?? И всем спасибо за предыдущие ответы!!! [vba]Код
Private Sub UserForm_Activate() Dim a a = DateAdd("M", -1, Now) TextBox1.Value = Format(a, "dd mmmm yyyy") End Sub
[/vba]Автор - Marr Дата добавления - 07.05.2020 в 20:43
krosav4ig
Дата: Четверг, 07.05.2020, 20:45 |
Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
[vba]Код
Format(application.edate(Now, -1 ) - 1, "dd MMMM yyyy")
[/vba]
[vba]Код
Format(application.edate(Now, -1 ) - 1, "dd MMMM yyyy")
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение [vba]Код
Format(application.edate(Now, -1 ) - 1, "dd MMMM yyyy")
[/vba] Автор - krosav4ig Дата добавления - 07.05.2020 в 20:45
Апострофф
Дата: Четверг, 07.05.2020, 20:49 |
Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 458
Репутация:
126
±
Замечаний:
0% ±
Excel 1997
Как в данном случае уменьшить месяц и год одновременно?
[vba]Код
a = DateAdd("M", -1, DateAdd("yyyy", -1, Now))
[/vba]
Как в данном случае уменьшить месяц и год одновременно?
[vba]Код
a = DateAdd("M", -1, DateAdd("yyyy", -1, Now))
[/vba]Апострофф
Ответить
Сообщение Как в данном случае уменьшить месяц и год одновременно?
[vba]Код
a = DateAdd("M", -1, DateAdd("yyyy", -1, Now))
[/vba]Автор - Апострофф Дата добавления - 07.05.2020 в 20:49
Marr
Дата: Четверг, 07.05.2020, 20:50 |
Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 17
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
действительно, очевидно! спасибо. Не знал что DateSerial можно вложить в format. Так и решается вопрос с удалением одновременно месяца и года на -1! [vba]Код
TextBox1.Value = Format(DateSerial(Year(Date) - 1, Month(Date) - 1, Day(Date)) - 1, "dd mmmm yyyy")
[/vba]
действительно, очевидно! спасибо. Не знал что DateSerial можно вложить в format. Так и решается вопрос с удалением одновременно месяца и года на -1! [vba]Код
TextBox1.Value = Format(DateSerial(Year(Date) - 1, Month(Date) - 1, Day(Date)) - 1, "dd mmmm yyyy")
[/vba]Marr
Сообщение отредактировал Marr - Четверг, 07.05.2020, 20:51
Ответить
Сообщение действительно, очевидно! спасибо. Не знал что DateSerial можно вложить в format. Так и решается вопрос с удалением одновременно месяца и года на -1! [vba]Код
TextBox1.Value = Format(DateSerial(Year(Date) - 1, Month(Date) - 1, Day(Date)) - 1, "dd mmmm yyyy")
[/vba]Автор - Marr Дата добавления - 07.05.2020 в 20:50