Macro para Outlook 2016
AUTOR PREGUNTA #1
Estoy intentando crear un macro para ajustar el párrafo, pero me da un error de objeto. Mi proyecto es:
Public Sub Formato()
Dim thisObject As Object
Set thisObject = Nothing
With Selection.ParagraphFormat.Alignment = wdAlignParagraphJustify
Selection.ParagraphFormat.SpaceBefore = 12
Selection.ParagraphFormat.LeftIndent = 1
End With
End Sub
-
1 personas más tuvieron esta duda Yo también
Esto también te interesa!
PREGUNTAS SIMILARES
#2
Creo que estás tratando de ejecutar un código VBA que y es para Microsoft Word, en lugar de Microsoft Outlook. Outlook maneja los correos electrónicos en HTML, en lugar de los objetos de Word, por lo que la forma de manejar el formato de párrafo es un poco diferente.
Si quieres cambiar el formato de los párrafos en un correo electrónico en Outlook, tendrias que crear un correo en Word con el formato que deseas, y luego enviar ese correo desde Word. Un ej de eso que he visto sería de este estilo:
Public Sub Formato() Dim doc As Word.Document Dim rng As Word.Range ' Crea un nuevo documento en Word Set doc = Word.Documents.Add Set rng = doc.Range ' Añade y formatea el texto With rng .Text = "Aquí va tu texto" .ParagraphFormat.Alignment = wdAlignParagraphJustify .ParagraphFormat.SpaceBefore = 12 .ParagraphFormat.LeftIndent = InchesToPoints(1) End With ' Crea un nuevo correo electrónico en Outlook Dim olApp As Outlook.Application Dim olMail As Outlook.MailItem Set olApp = New Outlook.Application Set olMail = olApp.CreateItem(olMailItem) ' Copia el contenido del documento de Word en el cuerpo del correo electrónico rng.Copy olMail.GetInspector.WordEditor.Content.Paste ' Muestra el correo electrónico olMail.Display ' Limpia doc.Close False Set rng = Nothing Set doc = Nothing Set olMail = Nothing Set olApp = Nothing End Sub
Espero te sea de ayuda. saludos.
#3
Si estás intentando ajustar el formato de un párrafo en un correo de Outlook usando un macro de VBA, el enfoque puede ser un poco diferente al que has estado intentando, debido a que Outlook maneja los correos electrónicos en HTML, no como objetivos de word.
Esto seria codigo de empiece para lo que quieres amigo:
Sub CrearCorreoConFormato() Dim olApp As Object Dim NuevoCorreo As Object Set olApp = CreateObject("Outlook.Application") Set NuevoCorreo = olApp.CreateItem(0) ' Define el formato HTML para el correo Dim cuerpoCorreo As String cuerpoCorreo = "<p style='text-align:justify; margin-left:1em;'> Este es tu texto. </p>" With NuevoCorreo .Subject = "Asunto del correo" .BodyFormat = olFormatHTML .HTMLBody = cuerpoCorreo .Display End With Set NuevoCorreo = Nothing Set olApp = Nothing End Sub
Este código crea un nuevo correo electrónico en Outlook y establece el cuerpo del correo como HTML. Dentro de la etiqueta <p> (párrafo) en HTML, puedes definir la alineación del texto (text-align:justify) y la sangría a la izquierda (margin-left:1em). Reemplaza " Este es tu texto. " con el texto que quieras usar.
Personaliza este codigo como creas oportuno.
AUTOR PREGUNTA #4
Muchas gracia. Francer, tu opción podría servir, pero yo lo quiero para dar formato al texto al responder un correo.