Macro que entrega valores en porcentaje vía email

Hola Expertos, quisiera la ayuda de ustedes para resolver el problema que les comento en la macro que he desarrollado.
Esta macro envía por email los resultados obtenidos en un libro excel. Estos son en % pero en el email parece: 0,0941 y necesito que aparezca 9,41%
La macro es la siguiente:
Sub email_alerta()
'
'
'Envía aviso cuando se ha excedido el límite superior
    Range("I47").NumberFormat = "00%"
    Dim OutApp As Object
    Dim OutMail As Object
    Dim strbody As String
    Dim tabla1 As Range
    Application.ScreenUpdating = False
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    Set tabla1 = Range("I47")
    strbody = "srs" & vbNewLine & vbNewLine & _
              "El control de plagas detectó que el área que usted administra presentó un incremento del consumo de cebos. El porcentaje de consumo asciende a: " & tabla1 & vbNewLine & _
             "atentamente, Administrador"
    On Error Resume Next
    With OutMail
        .To = ""
        .CC = ""
        .BCC = ""
        .Subject = "Control de roedores"
        .Body = strbody
        .Send
    End With
    On Error GoTo 0
    Set OutMail = Nothing
    Set OutApp = Nothing
    Application.ScreenUpdating = True
End Sub
A la espera de vuestra valiosa ayuda le saluda, donghi.
Un abrazo a todos y gracias de ante mano.

1 Respuesta

Respuesta
1
Hay varias soluciones, por ejemplo define a tabla1 como string en vez de range
Dim tabla1 as string
Y en vez de Set tabla1=Range("I47")    pones
tabla1 = Application.WorksheetFunction.Text(Range("I47"), "00%")
Kimari23, muchas gracias por el tiempo empeñado. Tu solución junto a la función ActiveCell. Value = Application.WorksheetFunction.RoundUp(ActiveCell, 4) para presentar los decimales, me resolvieron el problema.
Muchas gracias
donghi

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas