400 Aufrufe
Gefragt in Textverarbeitung von peko Mitglied (235 Punkte)
Ich habe eine einspaltige WORD-Tabelle mit 20 Zeilen. In den ersten Zeilen stehen Namen eingetragen, die darauffolgenden Zeilen sind leer.

Wie kann ich in aufsteigender Reihenfolge sortieren lassen, ohne dass die leeren Zeilen an den Anfang rutschen? Ich möchte aber vorher nicht die zu sortierenden Zeilen markieren, sonderen die gesamte Tabelle!

Ist das überhaupt möglich?

LG peko

1 Antwort

0 Punkte
Beantwortet von

Hallo peko,

ohne Markieren der Zeilen ist das nicht möglich. Du kannst das aber durch ein Makro erledigen lassen. Versuche mal den folgenden Code:

Sub TabelleSortieren()
    
    With Selection.Tables(1)
      For i = 1 To .Rows.Count
        If .Cell(i, 1).Range.Text = Chr(13) & Chr(7) Then
          k = i - 1
          Exit For
        End If
      Next i
      If k = 0 Then k = .Rows.Count
      .Cell(1, 1).Select
      Selection.MoveDown Unit:=wdLine, Count:=k - 1, Extend:=wdExtend
      Selection.Sort ExcludeHeader:=False, FieldNumber:="Spalte1", SortFieldType _
        :=wdSortFieldAlphanumeric, SortOrder:=wdSortOrderAscending, FieldNumber2 _
        :="", SortFieldType2:=wdSortFieldAlphanumeric, SortOrder2:= _
        wdSortOrderAscending, FieldNumber3:="", SortFieldType3:= _
        wdSortFieldAlphanumeric, SortOrder3:=wdSortOrderAscending, Separator:= _
        wdSortSeparateByTabs, SortColumn:=False, CaseSensitive:=False, LanguageID _
        :=wdGerman
      .Cell(k + 1, 1).Select
    End With
    
End Sub

Bei mir läuft er super.

Gruß Mr. K.

...