Страницы: 1
RSS
Как заставить функцию вернуть значение, а не просто выполниться
 
Уважаемые форумчане, можете пожалуйста помочь разобраться. Особо фунции не пишу, а тут пришлось. Я хочу чтобы в переменную вернулось значение, расчитанное внутри функции. Но она не заполняется. Т.е. моя переменная strMonth все-равно остается пустой.
Код
Private Function WhatMonth(ByVal funcM As Byte) As String
    Select Case funcM
        Case Is = 1
            strM = "Январь"
        Case Is = 8
            strM = "Август"
    End Select
End Function

Sub test()
    Dim myDate As Date
    Dim m As Byte
    
    myDate = Date
    m = Month(myDate)
    
    strMonth = WhatMonth(m)
End Sub
Когда испробованы все варианты, я начинаю плясать с бубном. Как правило — помогает.
 
Код
Private Function WhatMonth(ByVal funcM%) As String
    Select Case funcM
        Case Is = 1
            strM = "Январь"
        Case Is = 8
            strM = "Август"
    End Select
End Function
 
Sub test()
   dim strMonth$
   strMonth$ = WhatMonth(1)
End Sub
 
Abakumov, Вы же идентификатору WhatMonth ничего не присваиваете
Код
Function WhatMonth(ByVal funcM As Byte) As String
    Select Case funcM
        Case 1
            WhatMonth = "Январь"
        Case 8
            WhatMonth = "Август"
    End Select
End Function
 
Abakumov, просто нужно
Код
Private Function WhatMonth(ByVal funcM As Byte) As String
    Select Case funcM
        Case Is = 1
            WhatMonth = "Январь"
        Case Is = 8
            WhatMonth = "Август"
    End Select
End Function
ПредПредыдущий оратор не на то обратил внимание.
Изменено: БМВ - 29.08.2018 14:31:26
По вопросам из тем форума, личку не читаю.
 
del
Изменено: ivanok_v2 - 29.08.2018 14:32:31
 
Цитата
ivanok_v2 написал:
а так все в него норм.
ага, все кроме того что функция с нулем всегда возвращается
По вопросам из тем форума, личку не читаю.
 
Код
Sub test()
strMonth$ = MonthName(1) 'январь
strMonth$ = MonthName(8) 'август
End Sub
Изменено: k61 - 29.08.2018 15:34:16
Страницы: 1
Наверх