Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA Spaltenbreite bei unterschiedlicher Anzahl von Zellen in Zeilen
25.11.2019 15: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 15: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 15: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
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige