Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Eingabewerte in Spalte einsortieren

Gruppe

Change

Problem

Der in C1 einzugebende Wert soll in eine Zehnergruppen-Zahlenreihe mit Einzellenlücken in Spalte A zwischen die Zehnerwerte eingeordnet werden, wobei bereits vorhandene Werte zu überschreiben sind.

Lösung
Geben Sie den nachfolgenden Code in das Klassenmodul der UsereForm ein.

ClassModule: Tabelle1

Private Sub Worksheet_Change(ByVal Target As Range)
   Dim var As Variant
   If Target.Address <> "$C$1" Then Exit Sub
   If IsEmpty(Target) Then Exit Sub
   var = Application.Match( _
      CInt(Left(CStr(Target.Value), Len(Target.Value) - 1)) _
         * 10, Columns(1), 0)
   If Not IsError(var) Then
      Application.EnableEvents = False
      On Error GoTo ERRORHANDLER
      Cells(var + 1, 1).Value = Target.Value
   End If
ERRORHANDLER:
   Application.EnableEvents = True
End Sub