Supportnet / Forum / Tabellenkalkulation
Register sortieren im Arbeitsblatt ?
Frage
Hallo und guten Tag,
ich habe folgendes Problem:
In einem Arbeitsblatt habe ich mir einmal eine Struktur entworfen, die ich immer wieder verwende als Kundendatei. Jeder Kunde bekommt also ein eigenes Register, bestehend aus Kundenname und Ort.
Nachdemn ich nun ca. 35 Register angelegt habe
(immer durch Verschieben/Kopieren und Ans Ende stellen) fällt mir auf, wie unübersichtlich die Register aufgrund der Anzahl derzeit schon sind, es werden noch weitere dazu kommen.
Gibt es die Möglichkeit
a) die bereits bestehenden Register jetzt noch alphabetisch zu sortieren
und
b) neu anzulegende Register an der alphabetisch richtigen Stelle von allen einzusortieren ?
Ich habe Excel 2000 und Win 2000.
Vielen Dank im Voraus für die Lösung.
Wolf
Antwort 1 von coros
Moin Wolf,
kopiere nachfolgenden Code im VBA Editor in das VBA Projekt "DieseArbeitsmappe" Deiner Tabelle.
Dieser Code bewirkt, folgendes: Bei jedem aktivieren eines Tabellenblattes, werden diese sortiert. Somit werden auch die Tabellenblätter sortiert, wenn eine Kopie eines vorhandenen Tabellenblatts oder ein neues Blatt eingefügt wird.
Ich hoffe, Du kommst mit dem Code klar. Wenn nicht, melde Dich noch mal.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
kopiere nachfolgenden Code im VBA Editor in das VBA Projekt "DieseArbeitsmappe" Deiner Tabelle.
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim Tabellenblattanzahl As Integer, Erste_Schleife As Integer, _
Zweite_Schleife As Integer
Tabellenblattanzahl = ActiveWorkbook.Worksheets.Count
For Erste_Schleife = 1 To Tabellenblattanzahl
For Zweite_Schleife = Erste_Schleife To Tabellenblattanzahl
If Worksheets(Zweite_Schleife).Name _
< Worksheets(Erste_Schleife).Name Then
Worksheets(Zweite_Schleife).Move _
Before:=Worksheets(Erste_Schleife)
End If
Next Zweite_Schleife
Next Erste_Schleife
End Sub
Dieser Code bewirkt, folgendes: Bei jedem aktivieren eines Tabellenblattes, werden diese sortiert. Somit werden auch die Tabellenblätter sortiert, wenn eine Kopie eines vorhandenen Tabellenblatts oder ein neues Blatt eingefügt wird.
Ich hoffe, Du kommst mit dem Code klar. Wenn nicht, melde Dich noch mal.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von WolfFFM
Hallo coros,
habe es soeben ausprobiert, funktioniert perfekt.
Herzlichen Dank für Deine Hilfe.
MfG
Wolf
habe es soeben ausprobiert, funktioniert perfekt.
Herzlichen Dank für Deine Hilfe.
MfG
Wolf
Antwort 3 von coros
Hi Wolf,
super, dass Du den Code gebrauchen kannst. Danke auch für die Rückmeldung.
MfG,
coros
Jeder macht was er will, keiner macht was er soll, aber alle machen mit.
super, dass Du den Code gebrauchen kannst. Danke auch für die Rückmeldung.
MfG,
coros
Jeder macht was er will, keiner macht was er soll, aber alle machen mit.
Antwort 4 von iAge
Hallo, Ich habe das selbe Problem. Jedes register hat einen Domainnamen z.B. iage.ch. Nun möchte ich alle register aufsteigend oder Absteigend nach Alphabet sortieren. Leider funktioniert es bei mir mit dem Code nicht.
Hat vielleicht jemand einen Tipp für mich?
Ich habe Excel 2003.
Danke und Grüsse
iAge
Hat vielleicht jemand einen Tipp für mich?
Ich habe Excel 2003.
Danke und Grüsse
iAge

