название месяца по английски

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Naug
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 01.10.2004 (Пт) 12:20

название месяца по английски

Сообщение Naug » 04.10.2004 (Пн) 11:29

MonthFunction(month) выдает текстовое имя месяца по русски (логически мысля это из-за настроек компютера), а мне нужно И по-русски И по ангельски. Как бы это замутить?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 04.10.2004 (Пн) 11:35

=choose(month(date),"january", "febr", ... "december")
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 04.10.2004 (Пн) 16:28

Если функция MonthFunction() выдает не индекс (от 1 до 12), а текстовое имя, то тогда можно сделать только так (choose работать не будет, GSerg как всегда не вник в суть вопроса :), как я понял надо именно локализовать функцию MonthFunction()).

Код: Выделить всё

Function RussianMonthFunction(month)

Select MonthFunction(month)

Case "January"
RussianMonthFunction = "Январь"

' ... и т.д.

End Select

End Function

The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

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

Сообщение alibek » 04.10.2004 (Пн) 16:38

Вот, блин, эстеты :)
Код: Выделить всё
'Localized Month Name
Function GetLocalMonthName(Date, ByVal Locale As String) As String
'Locale =
'  rus - Russian
'  eng - English
Locale = LCase$(Locale)
Select Case Month(Date)
  Case 1
    GetLocalMonthName = Decode(Locale, "rus","Январь", "eng","January", "###")
  Case 2
    GetLocalMonthName = Decode(Locale, "rus","Февраль", "eng","February", "###")
  ...
End Month
End Function

Function Decode(ByVal Value As Variant, ParamArray Pairs() As Variant) As Variant
Dim N As Long, I As Long
N = UBound(Pairs) - LBound(Pairs) + 1
N = N Mod 2
If N = 1 Then Decode = Pairs(UBound(Pairs))
For I = LBound(Pairs) To UBound(Pairs) - N Step 2
  If Value = Pairs(I) Then
    Decode = Pairs(I + 1)
    Exit Function
  End If
Next I
End Function
Lasciate ogni speranza, voi ch'entrate.

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 04.10.2004 (Пн) 17:11

ИМХО, мы тут за человека решаем. А что ему нужно-то? :)
Может MonthFunction(month) принимает индекс месяца сама по себе.

Давайте попросим кода :) "Код, код, код" (типа "Сне-гу-ро-чка :)")
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali


Вернуться в Visual Basic 1–6

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

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

    TopList