Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zellinhalte der Spalten an den Zellinhalt Spalte A

Zellinhalte der Spalten an den Zellinhalt Spalte A
25.04.2017 23:10:37
Sergej
Hallo Leute,
es soll ermittelt werden, ob es ab Spalte B weitere Spalten gibt, die ein Zellinhalt haben, falls ja dann sollen die Zellinhalte der Spalten an den Zellinhalt der Spalte A angehängt / verschoben werden. Am Ende stehen alle Werte nur in der Spalte A.
Sub letzte_Spalte() Dim Ende As Long Ende = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Column MsgBox Ende End Sub Wie mache ich das bitte per VBA?
Danke vorab...
Gruß Sergej
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellinhalte der Spalten an den Zellinhalt Spalte A
26.04.2017 05:55:53
Hajo_Zi
Halo Sergej,
Option Explicit
Sub Verbinden()
Dim LoLetzteZ As Long
Dim LoLetzteS As Long
Dim LoI As Long
Dim LoJ As Long
LoLetzteZ = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _
Count)
For LoI = 1 To LoLetzteZ
LoLetzteS = IIf(IsEmpty(Cells(LoI, Columns.Count)), Cells(LoI, Columns.Count).End( _
xlToLeft).Column, Columns.Count)
For LoJ = 2 To LoLetzteS
Cells(LoI, 1) = Cells(LoI, 1) & Cells(LoI, LoJ)
Cells(LoI, LoJ).ClearContents
Next LoJ
Next LoI
End Sub


Anzeige
AW: Zellinhalte der Spalten an den Zellinhalt Spalte A
26.04.2017 07:23:36
GraFri
Hallo Sergej
So geht's.
Sub Anhängen()
Dim letzteA As Long, letzteSpalte As Long
Dim Anfang As Long, Ende As Long
Dim n As Long, Anzahl As Long
With Worksheets("Tabelle1")
letzteSpalte = .Range("A1").SpecialCells(xlCellTypeLastCell).Column
For n = 2 To letzteSpalte
letzteA = .Cells(Rows.Count, "A").End(xlUp).Row
Anfang = .Cells(1, n).End(xlDown).Row
Ende = .Cells(Rows.Count, n).End(xlUp).Row
Anzahl = Ende - Anfang + 1
.Range(Cells(letzteA + 1, 1), Cells(letzteA + Anzahl, 1)).Value = _
.Range(Cells(Anfang, n), Cells(Ende, n)).Value
.Range(Cells(Anfang, n), Cells(Ende, n)).ClearContents
Next n
End With
End Sub
mfg, GraFri
Anzeige
hast Du das getestet, GraFri? owT
26.04.2017 07:59:54
Matthias
AW: Zellinhalte der Spalten an den Zellinhalt Spalte A
26.04.2017 08:06:24
Matthias
Hallo
Bin nicht sicher was Du wiklich möchtest.
Bei dieser Datenlage:
Tabelle1

 ABCD
1abcd
2ABCD
3ABCD
4ABCD
5ABCD
6abcd
7abc6
8ab7 
9a8  
109   


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
kommt bei Hajos Vorschlag das raus:
Tabelle1

 A
1abcd
2ABCD
3ABCD
4ABCD
5ABCD
6abcd
7abc6
8ab7
9a8
109


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Wenn das Dein Wunsch war, dann ist ja alles ok.
Ich habs als Ziel nämlich so aufgefasst:
Tabelle1

 A
1a
2A
3A
4A
5A
6a
7a
8a
9a
109
11b
12B
13B
14B
15B
16b
17b
18b
198
20c
21C
22C
23C
24C
25c
26c
277
28d
29D
30D
31D
32D
33d
346


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Gruß Matthias
Anzeige
Getestet - funktioniert
26.04.2017 11:22:36
GraFri
Hallo
Fehler bei Ermittlung der ertsen Datenzeile einer Spalte behoben.
Option Explicit
Sub Anhängen()
Dim letzteA As Long, letzteSpalte As Long
Dim Anfang As Long, Ende As Long
Dim n As Long, Anzahl As Long
With Worksheets("Tabelle1")
'letzte Spalte in Zeile 1 suchen. Eventuell anpassen.
letzteSpalte = .Cells(1, Columns.Count).End(xlToLeft).Column
For n = 2 To letzteSpalte
letzteA = .Cells(Rows.Count, "A").End(xlUp).Row
'Anfang = .Cells(1, n).End(xlDown).Row
If Cells(1, n).Value = "" Then
Anfang = Cells(1, n).End(xlDown).Row
Else
Anfang = 1
End If
Ende = .Cells(Rows.Count, n).End(xlUp).Row
Anzahl = Ende - Anfang + 1
.Range(Cells(letzteA + 1, 1), Cells(letzteA + Anzahl, 1)).Value = _
.Range(Cells(Anfang, n), Cells(Ende, n)).Value
.Range(Cells(Anfang, n), Cells(Ende, n)).ClearContents
Next n
End With
End Sub
mfg, GraFri
Anzeige
DANKE!
26.04.2017 11:39:32
Sergej
Hallo zusammen,
die Lösung von Hajo und GraFri funktioniert. So soll es sein. Danke!
Danke auch an Matthias für die Mühe.
Beste Grüße,
Sergej
AW: DANKE!
26.04.2017 13:22:23
Matthias
Hallo
Schon seltsam. Ich fragte ja nach, welches Ergebnis Du wolltest.
Hatte schließlich auch eine Lösung erarbeitet.
Zitat
die Lösung von Hajo und GraFri funktioniert. So soll es sein.
  • Beide liefern aber ein unterschiedliches Ergebnis.

Das kann ich jetzt nicht ganz nachvollziehen.
Gruß Matthias
Anzeige
AW: DANKE!
26.04.2017 14:14:16
Sergej
Hallo Mathias,
du hast Recht...ich habe es jetzt verstanden, was du geschrieben hast. Die erste Variante war die, die ich bräuchte. Danke Dir!
Gruß,
Sergej
Danke für die Aufklärung ... owT
26.04.2017 14:30:55
Matthias
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige