
Actualizado:Macro actualizada con corrección.
Versión: Outlook 2013
Quiero poder...
- Modifique el tamaño de fuente del texto de la tabla.(Hecho)
- Elimine (desmarque) los atributos "Ancho preferido" de los atributos activos de tabla, columna y celda.
- Elimine (desmarque) el atributo "Altura especificada" de las filas de la tabla.
Si uso aTbl.Columns.PreferredWidth = Unchecked
para comprimir las columnas, ajusta las palabras y no desmarca la casilla. Quiero que NO ajuste las palabras.
Si uso autoFit, se ve igual que aTbl.Columns.PreferredWidth = Unchecked
.
Si configuro las columnas individualmente, se ve igual que aTbl.Columns.PreferredWidth = Unchecked
.
Tuve que importar la biblioteca de objetos de MS Word:
Lo que tengo hasta ahora:
Public Sub FormatSelectedText()
Dim objItem As Object
Dim objInsp As Outlook.Inspector
' Add reference to Word library in VBA Editor, Tools, References
Dim objWord As Word.Application
Dim objDoc As Word.Document
Dim objSel As Word.Selection
'On Error Resume Next
'Reference the current Outlook item
Set objItem = Application.ActiveInspector.CurrentItem
If Not objItem Is Nothing Then
If objItem.Class = olMail Then
Set objInsp = objItem.GetInspector
If objInsp.EditorType = olEditorWord Then
Set objDoc = objInsp.WordEditor
Set objWord = objDoc.Application
Set objSel = objWord.Selection
objSel.Font.Size = 8
Dim aTbl As Word.Table
For i = 1 To objSel.Tables.Count()
Set aTbl = objSel.Tables.Item(i)
aTbl.Borders.InsideLineStyle = wdLineStyleSingle
aTbl.Borders.OutsideLineStyle = wdLineStyleSingle
aTbl.Rows.Height = Unchecked
aTbl.Rows.AllowBreakAcrossPages = False
aTbl.Columns.PreferredWidth = Unchecked
aTbl.Columns.PreferredWidthType = wdPreferredWidthAuto
aTbl.PreferredWidth = Unchecked
Next
End If
End If
End If
Set objItem = Nothing
Set objWord = Nothing
Set objSel = Nothing
Set objInsp = Nothing
End Sub
Cómo se ve antes del script:
Resultado Esperado:
Después de ejecutar sin aTbl.Columns.PreferredWidth = Unchecked
(cerrar pero no comprimir las columnas):
Después de ejecutar con aTbl.Columns.PreferredWidth = Unchecked
(Solo... No):
Ejemplo de las configuraciones que deben cambiarse para modificar la tabla correctamente:
Respuesta1
Para mí esto ha funcionado:
aTbl.Columns.PreferredWidth = Unchecked
aTbl.Columns.PreferredWidthType = wdPreferredWidthAuto