Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Wie erste Spalte Mergen
#1
Hey,
Ich versuche die Zellen in einer Tabelle so zu formatieren dass alle Kommentare in einem Feld sind, damit ich diese Daten dann in eine MS SQL Datenbank importieren kann, jedoch muss ich dafür etwas haben welches dies automatisch macht da es einige tausend Zeilen sind.
   
Danke für eure Hilfe!
Antworten Top
#2
Also zumindest ich verstehe genau gar nicht, was die große verbundene Zelle mit dem großen Pfeil aussagen soll.
Anstatt mühsam ein Bild einzustellen, wäre eine Beispielmappe wesentlich hilfreicher.
Ebenfalls hilfreicher wäre eine etwas ausführlichere Erklärung.

EDIT: Nach erneutem Drübernachdenken habe ich zumindest verstanden, was du haben möchtest (und dass der Pfeil nur verwirrend ist)
Dennoch bleibt es dabei -> Beispieldatei, weil Nachbauen von vorhandenen Dateien lehne ich ab.
Schöne Grüße
Berni
Antworten Top
#3
Ich vermute, dass es beim Ergebnis nicht um Zellen-Verbinden, sondern um Verketten geht.

TE wollte die Verkettung optisch nur über Mergen zeigen. Denkbar ist allerdings, dass die Ausgangsdaten tatsächlich gemergt sind. Dann wird es nerviger.
Antworten Top
#4
Hallo,

teste mal damit:
Sub aaa()
 Dim rngB As Range, rngZ As Range
 Dim varC As Variant
 Set rngB = Range("A1").CurrentRegion
 Application.ScreenUpdating = False
 For Each rngZ In rngB.Columns(1).Cells
   If rngZ.MergeCells Then
     With Application.Intersect(rngZ.MergeArea.EntireRow, rngB.Columns(3))
       varC = Join(Application.Transpose(.Value), vbLf)
       .Value = ""
       .Cells(1).Value = varC
     End With
     Application.Intersect(rngZ.MergeArea.EntireRow, rngB.Range("A:B")).UnMerge
   End If
 Next rngZ
 If Application.CountBlank(rngB.Columns(1)) Then
   rngB.Columns(1).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
 End If
 Application.ScreenUpdating = True
End Sub
Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • loopios7
Antworten Top
#5
(13.08.2018, 09:21)MisterBurns schrieb: Also zumindest ich verstehe genau gar nicht, was die große verbundene Zelle mit dem großen Pfeil aussagen soll.
Anstatt mühsam ein Bild einzustellen, wäre eine Beispielmappe wesentlich hilfreicher.
Ebenfalls hilfreicher wäre eine etwas ausführlichere Erklärung.

EDIT: Nach erneutem Drübernachdenken habe ich zumindest verstanden, was du haben möchtest (und dass der Pfeil nur verwirrend ist)
Dennoch bleibt es dabei -> Beispieldatei, weil Nachbauen von vorhandenen Dateien lehne ich ab.

Das war nur ein Beispiel um zu zeigen was Zuerst sein soll und dann am Ende, jedoch bleiben beim normalen Mergen ja nur die Daten der linkeren-oberen Zelle.
Am Ende soll halt alles nur in einer Reihe sein (Kommentar am Ende aber noch auf mehreren Zeilen einfach eine Zelle) damit Ich es in eine Datenbank kopieren kann.
Testdatei kann ich sonst eine erstellen falls du eine möchtest, die Datei auf der ich das Anwenden will kann ich dir jedoch nicht geben.
Antworten Top
#6
(13.08.2018, 10:00)Kuwer schrieb: Hallo,

teste mal damit:
Sub aaa()
 Dim rngB As Range, rngZ As Range
 Dim varC As Variant
 Set rngB = Range("A1").CurrentRegion
 Application.ScreenUpdating = False
 For Each rngZ In rngB.Columns(1).Cells
   If rngZ.MergeCells Then
     With Application.Intersect(rngZ.MergeArea.EntireRow, rngB.Columns(3))
       varC = Join(Application.Transpose(.Value), vbLf)
       .Value = ""
       .Cells(1).Value = varC
     End With
     Application.Intersect(rngZ.MergeArea.EntireRow, rngB.Range("A:B")).UnMerge
   End If
 Next rngZ
 If Application.CountBlank(rngB.Columns(1)) Then
   rngB.Columns(1).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
 End If
 Application.ScreenUpdating = True
End Sub
Gruß Uwe
Danke viel mal, hat geklappt nach dem ich die Range Werte für meine Tabelle angepasst habe!
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste