Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

VBA Spaltenbreite bei unterschiedlicher Anzahl von Zellen in Zeilen

Forumthread: VBA Spaltenbreite bei unterschiedlicher Anzahl von Zellen in Zeilen

VBA Spaltenbreite bei unterschiedlicher Anzahl von Zellen in Zeilen
25.11.2019 16:16:55
Zellen
Hallo zusammen,
ich möchte per Makro die Spaltenbreiten je Tabelle fest einstellen. Ich erhalte allerdings eine Fehlermeldung und weiß nicht weiter, wenn folgende Situation auftritt:
Ab Zeile 3 habe ich 4 Zellen pro Zeile. Aber Zeile 1 und 2 bestehen aus einer _ unterschiedlichen Anzahl von Zeilen. Daher ist für mich klar, dass VBA eine Fehlermeldung herausgibt

("Lautzeitfehler 5992: Es können keine individuellen SPalten in dieser Sammlung adressiert werden, weil die Zellenweite der Tabelle unterschiedliche Werte aufweist")

| |
| | |
| | | | |
| | | | |
| | | | |
In Word selber kann ich ja die Spaltenbreite in Zelle A3 linksklicken und zurechtziehen, ohne das A2 und A1 sich bewegt/Fehlermeldungen aufkommen.
Ist dieses Verhalten in VBA übertragbar?
Anbei mein Code:

Dim x, Err
Public Sub VierzehnFünf()
Err = 0
TabellenIndex_A
If Err = 1 Then Exit Sub
Dim tRange As Range
'Dim tRange
Set tRange = ActiveDocument.Tables(x).Range
'Set tRange = ActiveDocument.Tables(5).Range
'Spalte 1, cm
tRange.Rows(3).Select
tRange.Columns(1).Select
'PointsToZentimeter-Methode:
'Ändert eine Maßeinheit von Punkt in Zentimeter
Selection.Columns.Width = CentimetersToPoints(2.8)
'Spalte 2, cm
tRange.Columns(2).Select
Selection.Columns.Width = CentimetersToPoints(2.8)
'Spalte 3, cm
tRange.Columns(3).Select
Selection.Columns.Width = CentimetersToPoints(2.8)
'Spalte 4, cm
tRange.Columns(4).Select
Selection.Columns.Width = CentimetersToPoints(2.8)
'Spalte 5, cm
tRange.Columns(5).Select
Selection.Columns.Width = CentimetersToPoints(2.8)
'Anpassung der Zellenhöhe auf 0,5 cm
Set tRange = ActiveDocument.Tables(x).Range
ActiveDocument.Tables(x).Rows.Height = CentimetersToPoints(0.5)
Selection.Collapse
End Sub
Private Function TabellenIndex_A()
With ActiveDocument
For x = 1 To .Tables.Count
'steht der Cursor in der Tabelle
If Selection.Range.InRange(.Tables(x).Range) Then
Exit Function
End If
Next
End With
'Fehler
MsgBox "Der Cursor steht nicht in einer Tabelle!", _
vbOKOnly + vbExclamation, "   Fehler im Makroablauf"
Err = 1
Exit Function
End Function

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Spaltenbreite bei unterschiedlicher Anzahl von Zellen in Zeilen
25.11.2019 16:45:48
Zellen
Hast du eine Ahnung, warum ganz oben evtl. steht : "Der Treffpunkt für Excel-Anwender"
"Aber Zeile 1 und 2 bestehen aus einer unterschiedlichen Anzahl von Zeilen. Daher ist für mich klar, dass VBA eine Fehlermeldung herausgibt" ?
AW: VBA Spaltenbreite bei unterschiedlicher Anzahl von Zellen in Zeilen
25.11.2019 16:51:52
Zellen
Hallo Onur,
Danke für deinen Hinweis!
Es sollte Zellen anstatt Zeilen, heißen, daher lautet der korrekte Satz:
"Aber Zeile 1 und 2 bestehen aus einer unterschiedlichen Anzahl von Zellen. Daher ist für mich klar, dass VBA eine Fehlermeldung herausgibt"

Anzeige

Forumthreads zu verwandten Themen

Anzeige