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.

Zellen pro Spalte mit gleichem Inhalt automatisch verbinden?
#1
Hallo Community,
möchte gerne alle Zellen gleichen Inhalts pro Spalte automatisch verbinden lassen (Inhalte müssen, wie bei Excel üblich nur einmal erhalten bleiben). Später soll also der Konfernzname, das Datum und der Ort nur noch einmal pro Konferenz auftauchen. Die Teilnehmer und ihre Beiträge könnte man dann zwar auch noch verbinden, aber hier müssten natürlich die ganzen Zellinhalte erhalten bleiben (was Excel üblicherweise nicht macht). Ist wahrscheinlich nur mit VBA möglich oder?
Danke im Vorraus

Bild siehe Attachment


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#2
Hallo,

der Code für Spalte "F":


Code:
Sub iMerge()
Application.DisplayAlerts = False
i = 2
j = i
Do While i < 11
   V = Cells(i, "F")
   If V = Cells(j + 1, "F") Then
       j = j + 1
   Else
   j = IIf(j = 0, i, j)
   Range(Cells(i, "F"), Cells(j, "F")).Merge
   i = j + 1
   j = i
   End If
Loop
Application.DisplayAlerts = True
End Sub


mfg


Angehängte Dateien
.xlsm   iMerge.xlsm (Größe: 15,37 KB / Downloads: 8)
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • lunaloop
Antworten Top
#3
(05.08.2016, 17:45)Fennek schrieb: Hallo,

der Code für Spalte "F":


Code:
Sub iMerge()
Application.DisplayAlerts = False
i = 2
j = i
Do While i < 11
   V = Cells(i, "F")
   If V = Cells(j + 1, "F") Then
       j = j + 1
   Else
   j = IIf(j = 0, i, j)
   Range(Cells(i, "F"), Cells(j, "F")).Merge
   i = j + 1
   j = i
   End If
Loop
Application.DisplayAlerts = True
End Sub


mfg

bin total begeistert hab schon mit rumexperimentiert, konnte es auch auf andere Spalten anwenden. Idea Gibt es eine Möglichkeit es auf mehrere Spalten gleichzeitig anzuwenden z.B. hier A und B bzw. F bis H?
mfg
Antworten Top
#4
Hallo,

nein, gleichzeitig für mehrere Spalte geht nicht, aber mit

Sp = array("F", "G","H") 'usw für alle Spalten, die bearbeitet werden sollen

und "F" im code ersetzen durch eine Variable, die alle Elemente von Sp durchläuft, geht es schon.

ungetestet:
for each S in Sp
'hier der Code von oben, aber mit S anstelle von "F"
next S

mfg
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • lunaloop
Antworten Top
#5
Vielen Dank für deine grosszügige Hilfe wird in Kürze ausprobiert 
mfg
Antworten Top
#6
Deutlich Komfortableres dürfte unter folgd Link zu finden sein:
http://web.archive.org/web/20150414061234/http://www.online-excel.de/fom/fo_read.php?f=3&bzh=0&h=251#a123x
Gruß, Castor
Antworten Top


Gehe zu:


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