VBA: wie kann ich einzelne Bereiche kopieren und in einer anderen Tabelle richtig anordnen?

Beispiel - (Microsoft Excel, VBA)

2 Antworten

Leider kann man mit dem Bild, auch vergrößert nichts anfangen.
Versuche es doch noch mal mit kleineren Ausschnitten und mehreren Bildern.
Am besten mit sichtbaren Spalten- und Zeilenköpfen.
Dazu musst Du hier selbst eine Antwort auf Deine Frage geben.
Wenn Du hier in einem Kommentar darauf hinweist, sehe ich das auch in meiner Übersicht.

Woher ich das weiß:Berufserfahrung – IT-Administrator (i.R.)

Einige Fragen hätte ich auch:

Das Bild suggeriert an einer Stelle, dass es Überlappungen gibt (über dem türkisen Balken rechts stehen farblose Einträge). Ist das so oder ist der erste Eintrag in einer Spalte immer die Überschrift? Falls nicht: Wie wird zwischen Überschrift und Inhalten unterschieden?

Wieviele Zeilen und Spalten gibt es (hinsichtlich Performance)?

Ein erster grober Ansatz (aber nicht unbedingt laufzeitoptimiert...) wäre es Spalte für Spalte durchzugehen. Taucht eine Überschrift auf (bei meinem Beispiel A, B, C) wird die Zielspalte (also wohin das Ergebnis kopiert werden soll) für die weiteren Einträge in dieser Spalte festgelegt, bis eine neue Überschrift erscheint. Im Beispiel stehen die Werte in einer Matrix von 10 Zeilen und 10 Spalten

Sub tt()
For i = 1 To 10 'spalten
For j = 1 To 10 ' zeilen
If Cells(j, i).Value <> "" Then
Select Case Cells(j, i).Value
Case "A": zielspalte = 12
Case "B": zielspalte = 13
Case "C": zielspalte = 14
Case Else: Cells(Cells(Rows.Count, zielspalte).End(xlUp).Row + 1, zielspalte).Value = Cells(j, i).Value
End Select
End If
Next j
Next i
End Sub

Moin Ninombre,

vielen Dank für den Ansatz, den werde ich erstmal weiter verfolgen :)

Gruß

Jan

0