Clever-Excel-Forum

Normale Version: Zellinhalt miteinander verketten
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,
vielen Dank für deine Bemühungen, funktioniert aber leider nicht :(
LG
Hi,

helfen kann ich dir fachlich nicht. Jedoch ein allgemeiner Hinweis: "funktioniert nicht", "geht nicht" oder ähnliche Aussagen sind zur Fehlersuche/-eingrenzung nicht hilfreich. Du solltest schon beschreiben, was für Fehlermeldung kommt, wo eventuell etwas markiert ist usw. Dann können die Helfer bei Bedarf nachbessern.
Hallo,

danke für den Hinweis Willwissen.
Ich habe die Datei mit dem letzthin vorgeschlagenen Code angefügt.
Meiner Meinung nach arbeitet er dahingehend falsch, als das einfach alle Tochterpositionen (XX.XX.XX.XX.A - XX.XX.XX.XX.B usw.) an den Muttertext (XX.XX.XX.XX)
angehängt werden.

LG
Code:
Sub M_snb()
   sn = Tabelle1.Cells(1).CurrentRegion.Resize(, 5)
   
   For j = 1 To UBound(sn)
     If Len(sn(j, 1)) = 11 Then
        sn(j, 3) = sn(j, 2)
        sn(j, 5) = sn(j, 4)
        c00 = sn(j, 3)
        c01 = sn(j, 5)
    ElseIf Len(sn(j, 1)) > 11 Then
        sn(j, 3) = c00 & " " & sn(j, 2)
        sn(j, 5) = c01 & " " & sn(j, 4)
    End If

   Tabelle1.Cells(1).CurrentRegion.Resize(, 5) = sn
End Sub
Hallo,

Vielen Dank für die Hilfe

Leider bekomme ich beim Ausführen des Codes folgende Fehlermeldung

"Fehler beim Kompilieren
For ohe Next"

habe die Datei mit dem eingefügten Code angefügt

Danke
Hallöchen,

ich vermute, dort fehlt das Next Smile

...
End If
Next
Tabelle1.Cells(1).CurrentRegion.Resize(, 5) = sn
End Sub
Hallo,

vielen Dank an alle für die Mithilfe. Der Code funktioniert jetzt bei 8-stelligem Kodex (XX.XX.XX.XX - XX.XX.XX.XX.A - XX.XX.XX.XX.B - usw)
einwandfrei. Perfekt wäre noch wenn er auch zwei- (XX), vier- (XX.XX) und sechsstellige (XX.XX.XX) Kodexe zusamennfassen würde.
Aber ich so bin ich auch zufrieden :)

Danke nochmals
LG
Franz
Code:
Sub M_snb()
   sn = Tabelle1.Cells(1).CurrentRegion.Resize(, 5)
   
   For j = 1 To UBound(sn)
     If InStr("_2_5_8_11_", Len(sn(j, 1))) Then
        sn(j, 3) = sn(j, 2)
        sn(j, 5) = sn(j, 4)
        c00 = sn(j, 1)
        c01 = sn(j, 3)
        c02 = sn(j, 5)
        y = Len(sn(j, 1))
    ElseIf Len(sn(j, 1)) > y And Left(sn(j, 1), y) = c00 Then
        sn(j, 3) = c01 & " " & sn(j, 2)
        sn(j, 5) = c02 & " " & sn(j, 4)
    End If
   Next

   Tabelle1.Cells(1).CurrentRegion.Resize(, 5) = sn
End Sub
Perfekt...genau wie ich es wollte
Vielleicht kann ich das irgendwann auch mal :)

Vielen Dank und LG
Ohne Zweifel  :21:
Seiten: 1 2