AW: Die Anzahl der Spalten einer Wordtabelle auslesen
24.05.2018 12:53:16
Frank
Hallo Robert,
danke, das werde ich morgen mal probieren.
Das hat inzwischen auch auf einem anderen Weg geklappt :-) (siehe unten)
Dabei bin ich auf das Problem gestoßen dass die Word-Sonderzeichen (Absatzende, Umbruch, ...) immer beim Auslesen des Zellwertes mit übergeben werden.
So ist dann nicht nur die Zahl sondern noch etwas unlesbares dabei.
Ich habe mir den Zahlenwert mit left(xxx,1) gefiltert.
Gibt es da eine besser Lösung?
Mein Code:
Set wrdtb = wrd.ActiveDocument.tables(aktuelleTabelle)
On Error Resume Next
For Each Row In wrdtb.Rows
If Row.Index >= 4 Then
If Row.Cells.Count = 3 Then
If Left(Row.Cells(3).Range.Text, 1) = 1 Then TX1 = TX1 + Left(Row.Cells(2). _
Range.Text, 1)
If Left(Row.Cells(3).Range.Text, 1) = 2 Then TX2 = TX2 + Left(Row.Cells(2). _
Range.Text, 1)
If Left(Row.Cells(3).Range.Text, 1) = 3 Then TX3 = TX3 + Left(Row.Cells(2). _
Range.Text, 1)
If Left(Row.Cells(3).Range.Text, 1) = 4 Then TX4 = TX4 + Left(Row.Cells(2). _
Range.Text, 1)
ElseIf Row.Cells.Count = 4 Then
If Left(Row.Cells(4).Range.Text, 1) = 1 Then TX1 = TX1 + Left(Row.Cells(3). _
Range.Text, 1)
If Left(Row.Cells(4).Range.Text, 1) = 2 Then TX2 = TX2 + Left(Row.Cells(3). _
Range.Text, 1)
If Left(Row.Cells(4).Range.Text, 1) = 3 Then TX3 = TX3 + Left(Row.Cells(3). _
Range.Text, 1)
If Left(Row.Cells(4).Range.Text, 1) = 4 Then TX4 = TX4 + Left(Row.Cells(3). _
Range.Text, 1)
End If
End If
Next Row