Ich benötige Hilfe bei einem Makro, gerne auch mit Erklärung dazu, damit ich verstehe wo es hakt.
Ausgangspunkt ist eine Tabelle, in der eine Variable in Spalte C steht (C3:C32), dann gibt es noch eine zweite Spalte I in der eine weitere Information steht (3 mögliche Werte), und eine dritte Spalte F, deren Inhalte ich kopieren möchte. Einträge in Spalte C können mehr als einmal vorkommen (also zB das Länderkürzel DE steht sowohl in Zeile 6 und 7).
Ziel ist eine neue Tabelle, nennen wir sie Overview 2, in der in Spalte A die 28 Länderkürzel stehen (A3:A30), die Spalten B, C und D bekommen die Überschrift der drei möglichen Werte aus Spalte I. In diesen Spalten B,C,D sollen dann die Einträge aus Spalte F (separiert mit Komma wenn mehr als ein Eintrag) stehen, für das jeweilige Land.
Mir würde schon ein Makro für eine Spalte reichen, dass ich dann für die Spalten C und D auch laufen lass (leicht abgeändert).
Mein bisheriger Versuch (funktioniert nicht richtig weil in der Ausgangstabelle nicht alle Länderkürzel stehen, und Werte nur kopiert werden wenn zufällig in Ausgangs- und Zieltabelle in derselben Ziel das selbe Länderkürzel steht).
Sub TF()
Dim i As Integer
Dim Quelle As Worksheet
Set Quelle = Sheets("(1) TF")
Set Ziel = Sheets("Overview 2")
For i = 3 To 32
If Quelle.Cells(i, 3) = Ziel.Cells(i, 1) Then
Sheets("Overview 2").Cells(i, 2).Value = Quelle.Cells(i, 6)
End If
Next
End Sub
Zweiter Versuch, da passiert aber nix:
Sub Kopieren()
Dim rng As Range
For Each rng In Sheets("(1) TF").Range(Cells(3, 3), Cells(Rows.Count, 3).End(xlUp))
If Sheets("(1) TF").Cells(rng.Row, 3) = Sheets("Overview 2").Cells(rng.Row, 1) And _
Sheets("(1) TF").Cells(rng.Row, 9) = Sheets("Overview 2").Cells(2, 2) Then
Sheets("(1) TF").Cells(rng.Row, 6).Copy _
Destination:=Sheets("Overview 2").Cells(rng.Row, 2)
End If
Next rng
End Sub
VIelen Dank für Deine Hilfe!
Liebe Grüße,
Jakob