Thema Datum  Von Nutzer Rating
Antwort
24.09.2020 10:37:40 Jungdra
NotSolved
24.09.2020 10:44:52 Mase
NotSolved
24.09.2020 10:46:45 Gast38018
NotSolved
24.09.2020 12:24:17 Mase
NotSolved
25.09.2020 08:54:12 Jungdra
NotSolved
26.09.2020 16:29:07 Jungdra
NotSolved
Rot Dann kombiniere mal folgende Formeln...[ Zugzwang @xlKing ;) ]
26.09.2020 19:54:33 Mase
NotSolved
26.09.2020 21:22:29 Jungdra
Solved
27.09.2020 10:14:20 Mase
NotSolved
26.09.2020 19:20:31 xlKing
NotSolved
26.09.2020 21:31:54 Jungdra
NotSolved

Ansicht des Beitrags:
Von:
Mase
Datum:
26.09.2020 19:54:33
Views:
412
Rating: Antwort:
  Ja
Thema:
Dann kombiniere mal folgende Formeln...[ Zugzwang @xlKing ;) ]

Huch, da haste recht. Du möchtest ja beim Wechsel wieder von vorne.

Nun, dann pack das mal in ein allgemeines Modul.

Du rufst diese Benutzerdefinierte Funktion wie eine normale Excel Formel auf.

Beispiel:

=ZählenBisWechsel(A1:O1)

 

Option Explicit
'
Private m_lngCount As Long
'

Function ZählenBisWechsel(ByRef rng As Excel.Range) As Variant
    Dim arr, ret
    Dim i As Long, ii As Long
    Count2Array = rng.Columns.Count
    '*** Slice 2D-Array
    arr = Application.Index(Application.Transpose(rng), Count2Array, 0)
    '*** Zähle solange gleich
    ii = 1
    For i = LBound(arr) To UBound(arr)
        If Not i = UBound(arr) Then
            If Not i = 1 Then
                If arr(i) = arr(i + 1) Then
                    ii = ii + 1
                Else
                    ret = ret & ii & "x" & arr(i) & ","
                    ii = 1
                End If
            Else
                ret = ret & ii & "x" & arr(i) & ","
            End If
        Else
            If arr(i) = arr(i - 1) Then
                'ii = ii + 1
                ret = ret & ii & "x" & arr(i) & ","
            Else
                ii = 1
                ret = ret & ii & "x" & arr(i) & ","
            End If
        End If
    Next i
    '*** Return
    ZählenBisWechsel = Left(ret, Len(ret) - 1)
End Function


Private Property Get Count2Array() As Variant
    Dim x() As Long, i As Long
    ReDim x(1 To m_lngCount)
    '***
    For i = 1 To m_lngCount
        x(i) = i
    Next i
    '***
    Count2Array = x()
End Property

Private Property Let Count2Array(ByVal flngCount As Variant)
    m_lngCount = flngCount
End Property

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
24.09.2020 10:37:40 Jungdra
NotSolved
24.09.2020 10:44:52 Mase
NotSolved
24.09.2020 10:46:45 Gast38018
NotSolved
24.09.2020 12:24:17 Mase
NotSolved
25.09.2020 08:54:12 Jungdra
NotSolved
26.09.2020 16:29:07 Jungdra
NotSolved
Rot Dann kombiniere mal folgende Formeln...[ Zugzwang @xlKing ;) ]
26.09.2020 19:54:33 Mase
NotSolved
26.09.2020 21:22:29 Jungdra
Solved
27.09.2020 10:14:20 Mase
NotSolved
26.09.2020 19:20:31 xlKing
NotSolved
26.09.2020 21:31:54 Jungdra
NotSolved