Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1920to1924
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
Inhaltsverzeichnis

an ralf_b oder an euch alle

an ralf_b oder an euch alle
09.03.2023 13:25:02
Antonio
Hallo Liebe Gemeinde,
bei diesem Code hat mir ralf_b sehr geholfen um weiter zu kommen.
Sub M_snb()
    BereichFbisG = Cells(1, 2).Resize(60, 6)
    ' Debug.Print sn.Address
    spalteM = Range("M3:M10")
   
    n = 3
    For j = 3 To 7                                                  'von Zeile 3 - 6 für Beispieldaten
        WerteAusZelleSpalteF = Split(BereichFbisG(j, 5), ",")         'Zerlegung der Inhalte von Zelle ab Zeile 3 in Spalte 6 (F) sn beginnt bei B
        BereichFbisG(n, 6) = BereichFbisG(j, 1)                     'Inhalt spalte B Zeile ab j=3 wird in Spalte 6(G) n=3 geschrieben
        n = n + 1                                                   'Zeile erhöhen um 1
        For jj = 2 To UBound(spalteM)                               'Schleife über die Einträge in M
            BereichFbisG(n, 6) = "."                                ' Punkt in Spalte G schreiben
            WerteVonZellenAusM = Split(spalteM(jj, 1), ",")         'Zellinhalt von Spalte M wird zerlegt ab Zeile 3
            If WerteVonZellenAusM(0) > "." Then                    ' nur wenn kein Punkt vorne dran ist
                On Error Resume Next
                For Each Wert In WerteVonZellenAusM                        ' Schleife über die einzelnen Werte
                    BereichFbisG(n, 6) = BereichFbisG(n, 6) & "," & WerteAusZelleSpalteF(Wert - 1)  'Umsortierte Werte aus Spalte F nach G
                Next
                On Error GoTo 0
                BereichFbisG(n, 6) = Mid(BereichFbisG(n, 6), 3)               'in Spalte G führender Punkt und Komma enfernen
            End If
            n = n + 1                                              'nächste Zeile
        Next
    Next
    Cells(1, 2).Resize(60, 6) = BereichFbisG   'bearbeitetes Array in Blatt zurückschreiben
End Sub

Tabelle2:
aus dem Muster in "M3;M10" wo Akkord steht, wird in Spalte "G"
aus Spalte "B" der Akkord, hier Am7 eingetragen
der Rest ist die Zerlegung aus Spalte "F".
Wenn aber in "M5" wieder Akkord geschrieben wird, bleibt "G5" leer.
Tabelle3 wie es aussehen sollte:
Ich würde gerne um Eure Hilfe bitten um zu erfahren wo und was soll ich im code ändern das es funzt.
Danke im Voraus
LG Antonio

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

Betreff
Datum
Anwender
Anzeige
irgendwie ist der Thread zerschossen. owt
10.03.2023 16:57:18
ralf_b
oder wurde hier ein bissel gelöscht? owt
10.03.2023 16:59:47
ralf_b
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige