Передача переменных обратно из функции? - PullRequest
0 голосов
/ 03 апреля 2012

Я смотрю на какой-то древний код и есть следующая строка кода:

strResult = strResult + "<table>" & vbLf
        output = PrintTableHead("Field Office Code","1")
        strResult = strResult + PrintTableHead("Field Office Code","1")
        strResult = strResult + "<tr>" & vbLf


Function PrintTableHead( TheTitle ,  TheColSpan ) 

    strResult = "<tr><th colspan="
    strResult = strResult + TheColSpan
    strResult = strResult + " BGCOLOR=""#004D95"" align=center>" & vbLf
    strResult = strResult + "<font face=""Time New Roman"" color=""#ffffff"" SIZE=3>" & vbLf
    strResult = strResult + TheTitle
    strResult = strResult + "</font></th></tr>" & vbLf

End Function

, когда я пытаюсь отладить strResult.он не добавляет содержимое функции pIrntTableHead.почему это не работает?Как я могу переписать это, чтобы добавить правильно?

так что после strResult = strResult + "<tr>" & vbLf значение strResult по-прежнему просто:

"table><tr>"

1 Ответ

5 голосов
/ 03 апреля 2012

Функция никогда не возвращает свое значение.Вам понадобится следующая строка непосредственно перед End Function.

PrintTableHead = strResult

Обратите внимание, что вы должны убедиться, что strResult также объявлен локально внутри функции, чтобы избежать перезаписи переменной, которую вы используете в вызове.код.Вся функция будет выглядеть так:

Function PrintTableHead( TheTitle ,  TheColSpan ) 

    Dim strResult
    strResult = "<tr><th colspan="
    strResult = strResult + TheColSpan
    strResult = strResult + " BGCOLOR=""#004D95"" align=center>" & vbLf
    strResult = strResult + "<font face=""Time New Roman"" color=""#ffffff"" SIZE=3>" & vbLf
    strResult = strResult + TheTitle
    strResult = strResult + "</font></th></tr>" & vbLf
    PrintTableHead = strResult

End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...