Дата и время

Программирование на Visual Basic for Applications
alex_ustas
Начинающий
Начинающий
 
Сообщения: 21
Зарегистрирован: 31.07.2004 (Сб) 19:53

Дата и время

Сообщение alex_ustas » 21.09.2004 (Вт) 13:06

Работаю я на Украине, соответсветнно региональные установки у меня "украинские". Но, есть некоторые документы, которые оформляются на русском.
Вот код, который добавляет мне Чило, Месяц и Год в ячейку.
Workbooks("calc.xls").Worksheets("calc").Range("A11").Value = format(Now, "dd, mmmm yyyy p.")
Но добавляет-то он "Вересень" вместо "Сентябрь" :) Есть выход из этого положения?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 21.09.2004 (Вт) 13:11

Своя функция MonthName :)
Может и можно как-то извратиться и вытянуть информацию из локалей, но получить локаль, отличную от текущей... не знаю даже, с чего начать.
Lasciate ogni speranza, voi ch'entrate.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 21.09.2004 (Вт) 20:03

Дык, а в чём проблема?
Код: Выделить всё
MonthName = Choose(Month(Now), "Январь", "Февраль", "Март", ...)
Изображение

alex_ustas
Начинающий
Начинающий
 
Сообщения: 21
Зарегистрирован: 31.07.2004 (Сб) 19:53

Сообщение alex_ustas » 21.09.2004 (Вт) 20:45

Ну, а ты пробовал. Я сделал так:
Select Case MonthUa
Case "Січень": MonthName = "января"
Case "Лютий": MonthName = "февраля"
Case "Березень": MonthName = "марта"
Case "Квітень": MonthName = "апреля"
Case "Травень": MonthName = "мая"
Case "Червень": MonthName = "июня"
Case "Липень": MonthName = "июля"
Case "Серпень": MonthName = "августа"
Case "Вересень": MonthName = "сентября"
Case "Жовтень": MonthName = "октября"
Case "Листопад": MonthName = "ноября"
Case "Грудень": MonthName = "декабря"
End Select
с вызовом этой функции из рабочей книги:
MonthUa = format(Now, "mmmm")
MonthRUS = MonthName(MonthUa)
CurDATA = format(Now, "dd") + " " + MonthRUS + " " + format(Now, "yyyy") + " г."
Workbooks("calc.xls").Worksheets("calc").Range("A11").Value = CurDATA

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 21.09.2004 (Вт) 21:02

alex_ustas, если уж делаешь Case - делай по номеру месяца, а не по названию. Будет гораздо быстрее.
Изображение


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 70

    TopList  
cron