Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Excel VBA (часть 3)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

dzefas

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
Dim Data1 As Date, Data2 As Date
Dim d As Integer, M As Integer, G As Integer
'
If Data1 > Data2 Then
    M = DateDiff("m", Data2, Data1)
    d = DateDiff("d", Data2, DateAdd("m", -M, Data1))
Else
    M = DateDiff("m", Data1, Data2)
    d = DateDiff("d", Data1, DateAdd("m", -M, Data2))
End If
 
If d < 0 Then
      M = M - 1
      d = d + 30
End If
    
G = M \ 12
M = M Mod 12
 
With txtResult
    If G > 0 And M > 0 And d > 0 Then
        .Text = CStr(G) & " г. " & CStr(M) & " мес. " & CStr(d) & " д."
    ElseIf G > 0 And M > 0 And d < 1 Then
        .Text = CStr(G) & " г. " & CStr(M) & " мес. "
    ElseIf G > 0 And M < 1 And d > 0 Then
        .Text = CStr(G) & " г. " & CStr(d) & " д."
    ElseIf G > 0 And M < 1 And d < 1 Then
        .Text = CStr(G) & " г. "
    ElseIf G < 1 And M > 0 And d > 0 Then
        .Text = CStr(M) & " мес. " & CStr(d) & " д."
    ElseIf G < 1 And M > 0 And d < 1 Then
        .Text = CStr(M) & " мес. "
    Else
        .Text = CStr(d) & " д."
    End If
End With
 

Всего записей: 18 | Зарегистр. 30-07-2006 | Отправлено: 19:52 17-06-2013 | Исправлено: dzefas, 20:04 17-06-2013
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Excel VBA (часть 3)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru