Kopieren und am Ende einfügen über Filter
#1
Hallo zusammen,

ich möchte gerne folgendes machen:

Ich habe ein Blatt in dem ich Daten pflege vertikal (Blatt A = Eingabefelder)
Ich habe ein Blatt in dem ich die Daten aus Blatt A in Blatt B einfügen möchte, da ich hier alle Daten sammle 

Nun möchte ich, dass Excel automatisch die Daten aus Blatt A (B2:B122) kopiert und in der ersten freien Spalte in Blatt A (z.B. ab B4371) einfügt (transponiert und als Werte).
Im Blatt A habe ich eine Hilfszelle, die mir die erste leere Spalte in Blatt B angibt.

Kann mir jemand dabei helfen. Ich habe es mit dem Makro aufzeichnen versucht, aber da kopiert er immer in dieselbe Zeile (4371 und referenziert nicht immer wieder neu auf die in B1 berechnete leere spalte.

Hier mal das Makro.

Danke für Eure Hilfe!!

Sub COPY_PASTE_EMPTY()

'
' COPY_PASTE_EMPTY Makro
'
' Tastenkombination: Strg+Umschalt+W
'
    Range("B1").Select
    Selection.Copy
    Sheets("Produktdaten-KSK").Select
    ActiveSheet.Range("$A:$DW").AutoFilter Field:=1, Criteria1:="=4371", _
        Operator:=xlAnd
    Sheets("Eingabe KSK-Daten").Select
    Range("B2:B122").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Produktdaten-KSK").Select
    Range("B4371").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ActiveSheet.Range("$A:$DW").AutoFilter Field:=1
End Sub
Top
#2
Hallo,

man kann Deinen Code zwar zusammenkürzen, aber Ich zeige die Lösung an Deinem Code, um Dich nicht zu verwirren.

Deine Zeile:
Range("B4371").Select

kannst Du so ersetzen:

Range(Range("B1")).Select


wenn sich die Hilfszelle B1 in Blatt "Produktdaten-KSK"

wenn sie sich im Blatt "Produktdaten-KSK" befindet dann so:
Range(Sheets("Produktdaten-KSK").Range("B1")).Select

Die erste freie Zelle kann man auch per Code bestimmen und Du bräuchtest keine Hilfzelle.
Gruß Atilla
Top


Gehe zu:


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