Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
832to836
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
832to836
832to836
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Sortierbereich variabel bzw. dynamisch

Sortierbereich variabel bzw. dynamisch
30.12.2006 17:50:55
Markus Morgenbesser
Ich habe folgendes Problem: Ich möchte dass sich der Sortierbereich automatisch bei Einfügen von 2 Zeilen um diese 2 Zeilen erweitert. Gleichzeitig sollte sollte sich der Bereich beim Löschen von 2 Zeilen wieder um die 2 reduzieren. Man kann es sich vorstellen als ein vorgefertigtes Bereichsfenster, das je nach Anzahl der befüllten Zeilen größer und kleiner
wird.
Der zu sortierenede Bereich sieht so aus:
A B C D E ...BR
7 Nachname Vorname KDStamm Kundeseit Notizen ...Anzahl
8 Muster Max 1234 25.02.06 Text ... XXX
(Leider in der Vorschau alles verschoben, hab aber das excelfile angehängt)
Also in der Zeile 7 stehen die Überschriften wo 1. nach Nachnamen 2. nach Vornamen u. 3. nach KD Stamm sortiert werden soll. Per Makro werden dann vorgefertigte Eingabe Felder einzeln immer wieder in der Zeile 8 eingefügt und ergibt nach unten dann eine unendliche Liste.
Genauso kann man per Makro Zeilen wieder löschen, wobei immer die oberste Zeile der Liste(logischerweise dann zeile 8) gelöscht wird.
Wichtig zu wissen ist, dass die Zellen unterhalb der bereits erzeugten Liste gesperrt sind und somit beim Blattschutz und Sortierung per Makro unterhalb der entsperrten Eingabefelder einen Fehler verursachen. Der Sortierbereich darf also immer nur maximal bis zu dem untersten Eingabefeld der Liste (welches auch immer befüllt ist) gehen.
Anders erklärt:
Ausgangstellung es existieren nur die Überschriften in Zeile 7(entsperrt) und die Zeile 8 und darunter sind bereits gesperrt.
Neuen Kunden anlegen: Eingabefeld wird in Zeile 8 erzeugt und ist befüllbar (Zeile 8 entsperrt)
Neuen Kunden anlegen: Eingabefeld wird in Zeile 8 erzeugt. erstes Eingabefeld wird auf Zeile 9 verschoben. (Sortierbereich müsste sich nun von A7:BR9 erstrecken.
Neuen Kunden anlegen: Eingabefeld wird in Zeile 8 erzeugt. Sortierbereich müsste sich auf A7:BR10 erweitern
Kunden löschen: Eingabefeld in Zeile 8 wird gelöscht und der Sortierbereich darf sich nur mehr
von A7:BR9 erstrecken, da Zeile 10 bereits wieder gesperrt ist.
Bitte um Hilfe und einen Makrocode den ich hier wirklich 1:1 kopieren kann, da ich mich mit Programmieren nicht wirklich gut bis gar nicht auskenne. v.a. erklärungen im code bitte mit farbe oder kennzeichnen, da ich sie so sonst nicht vom code unterscheiden kann.
ich versuche noch das excelfile anzuhängen und hoffe es klappt.
https://www.herber.de/bbs/user/39268.xls
danke lg markus

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sortierbereich variabel bzw. dynamisch
30.12.2006 22:21:34
Kay
Hallo Markus,
probiere dies mal, Nachname und Vorname muss ausgefüllt sein sonst wirft er alles durcheinander.
Diesen Code durch deinen ersetzen.

Sub sortierenkome()
Dim lngEnde As Long
lngEnde = Worksheets("Tabelle1").Range("A65536").End(xlUp).Row 'letzte gefüllte Zelle in Spalte A
'Sortierung
Range("A8", "BR" & lngEnde).Sort Key1:=Range("A8"), Order1:=xlAscending, Key2:=Range("B8") _
, Order2:=xlAscending, Key3:=Range("C8"), Order3:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End Sub

MfG
Kay
Anzeige
AW: Sortierbereich variabel bzw. dynamisch
31.12.2006 18:27:57
Markus Morgenbesser
super lösung danke...
ein problem hab ich jetzt noch. es funktioniert leider der button rückgängig machen nicht wenn man wirklich mal sortiert ohne vornamen und dann alles durcheinander ist weil die sortierung mit dem makro gemacht wird und ich befürchte schlimmes :-) kann man hier eine sicherheitsstufe einbauen. zb. dass wenn in irgendeine zeile der liste vor o. nachname fehlen eine fehlermeldung kommt und nicht sortiert wird. warum ist das so bei dem code dass beides befüllt sein muss, ich konnte mir das aus der logik der formel nicht herausinterpretieren.
sonst voll genial und genau das was ich wollte.
ps: möglichkeit wäre natürlich auch ein code wo man die sortierung wieder widerrufen kann und auf den zustand vor der "fehlerhaften" sortierung rückgängig machen kann. weiß nicht was hier leichter ist aber ich glaube du weißt was ich befürchte bzw. wo das tüpfelchen auf dem i noch fehlt.
guten rutsch heute
lg markus
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige