Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
864to868
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
864to868
864to868
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Funktion Alphabet möglich?

Funktion Alphabet möglich?
26.04.2007 16:57:16
lobby007
Hallo Excel-Freaks,
gibt es eine Funktion in Excel, bzw. kann man so eine programmieren die 2 Spalten vergleicht und die dann weiß welche Spalte im Alphabet eher dran kommt?
aaa----aaa
bbb----ccc jetzt müßte die Funktion wissen das Spalte A erst kommt (und eine zeile einfügen und den ganzen Spalte B Bereich eine Zeile runterschieben
ccc---ccc
fff---ddd jetzt ist Spalte B vor Spalte A im Alphabet - also Zeile einfügen und Spalte A Bereich eine Zeile nach unten schieben
und das immer weiter.
Gibt es so eine Funktion bzw. kennt jemand diese Funktion?
Wir man wohl per VBA-machen müssen.
gruß lobby007

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Das sieht mir doch sehr chinesisch aus,...
27.04.2007 04:00:00
Luc:-?
...Lobby,
will heißen, ziemlich unverständlich! Eine Alfabet-Fkt, was immer das auch sein mag, gibt es so nicht, aber man kann Daten sortieren, auch mit einer Fkt, wenn man sie selber schreibt (wie ich das für Zahlen getan habe). Eine Fkt für eine alfabetische Sortierung zu schreiben ist ungleich schwerer, denn hierbei müssen die Sortierregeln der jeweiligen Sprache beachtet wdn. Aber vielleicht ist dein Problem ja wesentlich trivialer...? Also eine deutlich exaktere Beschreibung und/oder ein(e) kleine(s) aussagefähige(s) Bsp(datei) , bitte...!
Gruß Luc :-?

Anzeige
AW: Das sieht mir doch sehr chinesisch aus,...
27.04.2007 07:14:44
lobby007
Hallo Luc,
siehe hier:
Hallo Excel-Freaks,
ich habe einen Code:

Sub testalphabetstrcomp2neu()
Dim LJ1name As String, LJ2name As String
LJ1name = ActiveCell
LJ2name = ActiveCell.Offset(0, 1)
If StrComp(LJ1name, LJ2name, vbTextCompare) = 0 Then
ActiveCell.Select
End If
If StrComp(LJ1name, LJ2name, vbTextCompare) = 1 Then
Selection.Insert shift:=xlDown
End If
If StrComp(LJ1name, LJ2name, vbTextCompare) = -1 Then
Selection.Offset(0, 1).Insert shift:=xlDown
End If
End Sub


der Wunderbar funktioniert wenn ich ihn für jede Zeile einzeln einsetze.
Ich beginne in A2 und gehe dann zu B2 usw.
Nun soll er aber ab A2 (A1+B1= Überschrift) bis zum Ende der Liste gehen - wie macht man das?
Siehe auch Beispieldatei. - war nicht hochzuladen
A1 deueng B1 xxxx
A2 bus B2bus
A3 boat B3boat
A4 access B4 access
A5 access B5 accore
A6 entrance B6 dumm
Die StrComp-Funktion macht das mit dem Alphabet aber irgendetwas stimmt mit der Selektion nicht.
Gruß lobby007

Anzeige
AW: Das sieht mir doch sehr chinesisch aus,...
28.04.2007 21:54:00
fcs
Hallo lobby007,
hier eine Möglichkeit eine Schleife zu generieren, die die Zeilen abarbeitet.
Damit es sauber funktioniert, muss du evtl. vorher jeweils in Spalte A und Spalte B alphabetisch sortieren.
Gruß
Franz

Sub testalphabetstrcomp3neu()
Dim LJ1name As String, LJ2name As String, wks As Worksheet, zeile As Long, Spalte As Integer
Set wks = ActiveSheet
zeile = 2
Spalte = 1
Do
LJ1name = wks.Cells(zeile, Spalte).Value
LJ2name = wks.Cells(zeile, Spalte).Offset(0, 1).Value
Select Case StrComp(LJ1name, LJ2name, vbTextCompare)
Case 0
'do nothing
Case 1
wks.Cells(zeile, Spalte).Insert shift:=xlDown
Case -1
wks.Cells(zeile, Spalte).Offset(0, 1).Insert shift:=xlDown
End Select
zeile = zeile + 1
Loop Until IsEmpty(wks.Cells(zeile, Spalte)) Or IsEmpty(wks.Cells(zeile, Spalte).Offset(0, 1)) _
End Sub


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige