Aktualisierte: Aktualisiertes Makro w / fix.
Version: Outlook 2013
Ich möchte in der Lage sein...
- Ändern Sie die Schriftgröße des Textes in der Tabelle. (Erledigt)
- Entfernen Sie die Attribute "Bevorzugte Breite" aus den aktiven Attributen für Tabelle, Spalte und Zelle (deaktivieren Sie sie).
- Entfernen Sie das Attribut "Angegebene Höhe" aus den Tabellenzeilen (deaktivieren Sie es).
Wenn ich benutze aTbl.Columns.PreferredWidth = Unchecked
Zum Komprimieren der Spalten wird ein Zeilenumbruch ausgeführt und das Kontrollkästchen nicht deaktiviert.
Ich möchte, dass es NICHT umbrochen wird.
Wenn ich autoFit benutze, sieht es genauso aus wie aTbl.Columns.PreferredWidth = Unchecked
.
Wenn ich die Spalten einzeln einstelle, sieht es genauso aus wie aTbl.Columns.PreferredWidth = Unchecked
.
Musste die MS Word-Objektbibliothek importieren:
Was ich bisher habe:
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
Wie es vor Script aussieht:
Erwartetes Ergebnis:
Nach dem Laufen ohne aTbl.Columns.PreferredWidth = Unchecked
(Schließen Sie die Spalten, ohne sie zu komprimieren):
Nach dem Laufen mit aTbl.Columns.PreferredWidth = Unchecked
(Einfach nein):
Beispiel für die Einstellungen, die geändert werden müssen, um die Tabelle korrekt zu ändern:
microsoft-outlook
vba
macros
ScrappyDev
quelle
quelle
.autofit
?aTbl.Columns.PreferredWidth = Unchecked
Antworten:
Bei mir hat das geklappt:
quelle
aTbl.PreferredWidth = Unchecked
bis zum Ende der for-Schleife funktioniert es.