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.

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
Antworten 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
Antworten Top


Gehe zu:


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