Eine interessante Frage, die ich tun, ohne Schleife durch eine Sequenz aussehen wollte für sequentielle Überprüfung (die erste müßte Sortierung) baut
Diese Funktion
- den String in eine Reihe Adresse zwingt
- verwendet
Union
zur Gruppe aufeinanderfolgenden Reihen zusammen
- die Zeichenfolge manipuliert die Spaltenbezeichner
zu entfernen
Schleife war nicht erforderlich, kürzere Version!
Function NumOut(strIn As String) As String
Dim rng1 As Range
Set rng1 = Range("A" & Join(Split(Application.Trim([a1]), ", "), ",A"))
'force the range into areas rather than cells
Set rng1 = Union(rng1, rng1)
NumOut = Replace(Replace(Replace(rng1.Address, "$A$", vbNullstring), ": ", "-"), ",", ", ")
End Function
Willkommen bei StackOverflow chen. Kannst du beschreiben, was du versucht hast und wo du feststeckst? – MattClarke
@MattClarke Muss ich es in ein Array ändern und durch jede Nummer durchlaufen, um zu sehen, ob die Nummer dahinter 1 mehr ist als das? Wie soll ich von hier ausgehen? – chen
Kannst du bitte deinen Beitrag bearbeiten, um mehr zu deinem Ziel hinzuzufügen? Die Logik in Ihrem Beispiel ist schwer zu verstehen. –