Hallo Walter,
also 100 Zeilen sind keine große Tabelle 
Ist aber auch egal. Wichtiger wäre, von den MehrfachTabellen wegzukommen.
Man kommt so gut wie immer mit einer einzigen Datentabelle aus.
Wenn Du Angst hast, Deine ursprüngliche Sortierung zu verlieren, füge eine Spalte mit fortlaufender Nummerierung ein und sortiere bei Bedarf danach.
Wenn Dir die Tabelle zu groß wird, filtere und blende aus ( gruppieren ).
Das folgende Makro sortiert immer nach der Spalte, in der der Cursor steht.
Vielleicht kannst Du es gebrauchen. Es hat große Vorteile, wenn die zu ändernden Zeilen in einem Block stehen. Das bekommt man durch geschickte Sortierung schnell hin 
Viel Erfolg
Thomas
P. S.: Alle Zeilen bis zur 8. werden nicht mitsortiert - „Überschriften“.
Option Explicit
Dim AR As Long: Dim AC As Long 'activecell.row + .column
Dim LR As Long: Dim LC As Long ‚ActiveCell.SpecialCells(xlLastCell).Row+ .column
Dim R1 As Integer: Dim C1 As Integer ‚1.DatenZeile und -Spalte
Dim R0 As Integer: Dim i As Long ’ R0=Zeile mit AusBlendMarkierungen‘
Dim C0 As Integer: ’ C0=Zeile mit AusBlendMarkierungen‘
Dim Modus As Boolean
Dim bolSperre As Variant
Public Static Sub GetMoreSpeed(Optional ByVal Modus As Boolean = True)
Dim intCalculation As Integer, bolSperre As Boolean
If Modus = True Then
intCalculation = Application.Calculation
bolSperre = ActiveSheet.ProtectContents
ActiveSheet.Unprotect
Else
If bolSperre = True Then ActiveSheet.Protect
End If
With Application
.ScreenUpdating = Not Modus
.EnableEvents = Not Modus
.Calculation = IIf(Modus = True, xlManual, intCalculation)
.Cursor = IIf(Modus = True, xlWait, xlDefault)
End With
End Sub
Sub sortieren_nach_aktueller_Spalte_2003()
Call GetMoreSpeed(True)
’ Makro am 16. 03. 2012 von Thomas Schütte aktualisiert
'dieses Makro läuft auch unter Excel 2003.
'Dieses Makro sortiert alle belegten Zellen unterhalb der letzten ÜberschriftenZeile nach
'der Spalte, in der der Cursor bei Auslösung steht. Vorher werden alle ausgeblendeten Zellen eingeblendet und Filter zurückgesetzt.
'Voraussetzung: Überschriften und Konstanten in Zeile 1 bis 8 ( werden nicht mitsortiert )
’ Spalten vor c1 werden ebenfalls nicht mitsortiert.
With ActiveSheet
R1 = IIf(.Cells(1, 20).Value = 0, 9, .Cells(1, 20).Value) ’ R1=9:Überschriften NUR OBERHALB Zeile 9!!!
C1 = IIf(.Cells(1, 21).Value = 0, 1, .Cells(1, 21).Value) ’ C1=4:Steuerungs-Spalten NUR VOR Spalte 4!!!
If .FilterMode Then .ShowAllData
End With
LR = ActiveCell.SpecialCells(xlLastCell).Row: LC = ActiveCell.SpecialCells(xlLastCell).Column
AR = ActiveCell.Row: AC = ActiveCell.Column
Cells.EntireColumn.Hidden = False
Cells.EntireRow.Hidden = False
Range(Cells(R1 - 1, C1), Cells(LR, LC)).Sort Key1:=Range(Cells(R1, AC), Cells(LR, AC)), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortTextAsNumbers
Call GetMoreSpeed(False)
End Sub