Ola, criei uma função simples que faz alguns Replaces e retorna uma string, conforme segue:
Meu problema está em retornar a variável textoAjustado, pelo que entendi o access não usa o Return, dentro da função AjustaCampos a variável textoAjustado está sendo exibida perfeitamente, porém ela não é retornada na chamada da função. Não apresenta nenhum erro, apenas mostra uma MsgBox vazia. No banco de dados este texto está armazenado como Memorando, o texto que estou tentando passar está com mais de 300 caracteres, não sei se pode ser por este o problema..
--
Descobri o problema, faltou apenas inserir AjustaCampos = textoAjustado no fim da função AjustaCampos..
- Código:
sqlString = "SELECT OCORRENCIAS.*, TERCEIROS.* FROM OCORRENCIAS, TERCEIROS"
Set RS = CurrentDb.OpenRecordset(sqlString)
MsgBox AjustaCampos(txtMSG1, RS)
End Sub
Function AjustaCampos(texto, RS) As String
textoAjustado = texto
textoAjustado = Replace(textoAjustado, "[E.EMPRESA]", RS.Fields("Empresa"))
textoAjustado = Replace(textoAjustado, "[E.CNPJ]", Format(RS.Fields("CNPJ"), "@@.@@@.@@@/@@@@-@@"))
textoAjustado = Replace(textoAjustado, "[E.ENDERECO]", RS.Fields("SYS.Endereco"))
End Function
Meu problema está em retornar a variável textoAjustado, pelo que entendi o access não usa o Return, dentro da função AjustaCampos a variável textoAjustado está sendo exibida perfeitamente, porém ela não é retornada na chamada da função. Não apresenta nenhum erro, apenas mostra uma MsgBox vazia. No banco de dados este texto está armazenado como Memorando, o texto que estou tentando passar está com mais de 300 caracteres, não sei se pode ser por este o problema..
--
Descobri o problema, faltou apenas inserir AjustaCampos = textoAjustado no fim da função AjustaCampos..