Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1680to1684
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Erneut Paste Special

Erneut Paste Special
27.03.2019 11:42:08
Christian
Moin alle zusammen,
vor einigen Monaten habe ich glaube ich schon mal wegen dem Thema hier einen Beitrag geschrieben.. irgendwie verstehe ich wohl immer noch nicht wie ich Formeln als Werte einfügen kann. Hier mal ein Auszug aus meinem Code. Nach der Calculation möchte ich diese als Werte einfügen, bekomme jedoch die Meldung "Die PasteSpecial-Methode des Range-Objekts konnte nicht ausgeführt werden". Daher habe ich jetzt den Befehl Column verwendet, aber die Meldung bleibt gleich. Wo liegt mein Fehler?
Beste Grüße und vielen Dank für eure Hilfe
Christian
End With
With wsMSPT
.Range("D3").Formula = "=IFERROR(VLOOKUP(B3,Shipset!L:S,8,FALSE),"""")" 'WO
.Range("D3:D" & lngLZeile).FillDown
.Range("E3").Formula = "=IFERROR(VLOOKUP(B3,Shipset!L:T,9,FALSE),"""")" 'WO
.Range("E3:E" & lngLZeile).FillDown
End With
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
wsMSPT.Columns("D:E").PasteSpecial Paste:=xlPasteValues

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Erneut Paste Special
27.03.2019 11:49:36
Daniel
Hi
naja, wenn du was einfügen willst, musst du vorher was kopieren.
wenn du nichts kopierst, weiß Excel ja gar nicht, was es einfügen soll.
Gruß Daniel
AW: Erneut Paste Special
27.03.2019 11:49:49
Daniel
Hallo Christian,
Du musst schon erst einmal etwas kopieren, bevor du Werte einfügen kannst. Also
wsMSPT.Columns("D:E").Copy
wsMSPT.Columns("D:E").PasteSpecial Paste:=xlPasteValues
Gruß
Daniel
AW: Erneut Paste Special
27.03.2019 11:57:43
Christian
ahhhh^^ Stimmt. Oh man vielen Dank Freunde
AW: Erneut Paste Special
27.03.2019 12:06:23
Daniel
Gerne. In diesem Fall hätte man das aber auch einfacher mit
wsMSPT.Columns("D:E").Value=wsMSPT.Columns("D:E").Value
ausdrücken können!
Anzeige
AW: Erneut Paste Special
27.03.2019 12:14:12
Daniel
je nachdem.
es gibt Unterschiede zwischen .Value = .Value und Copy+PasteSpecial.
Gruß Daniel
Apropo Vereinfachen
27.03.2019 12:30:03
Christian
Gibt es vielleicht auch für diesen Fall eine Vereinfachung? Ich habe mal gehört mit Arrays könnte die Performance des von einer Tabelle gefilterte Werte in eine andere Tabelle deutlich erhöhen? Wie könnte so eine Lösung aussehen?

Set WsQuelle = tabComp
Set wsMSPT = TabMSPT_Monitor
lngLZeile = WsQuelle.Cells.Find("*", WsQuelle.Range("A1"), xlFormulas, xlWhole, xlByRows,  _
xlPrevious).Row
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
wsMSPT.Range("A3:P" & lngLZeile).Clear
WsQuelle.Range("A1").AutoFilter Field:=14, Criteria1:="MSPT"
With WsQuelle
.Range("A2:A" & lngLZeile).Copy wsMSPT.Range("A3") 'Shipset
.Range("B2:B" & lngLZeile).Copy wsMSPT.Range("B3") 'IPO
.Range("C2:C" & lngLZeile).Copy wsMSPT.Range("C3") 'KIT
.Range("D2:D" & lngLZeile).Copy wsMSPT.Range("F3") 'Component
.Range("E2:E" & lngLZeile).Copy wsMSPT.Range("G3") 'Description
.Range("F2:F" & lngLZeile).Copy wsMSPT.Range("H3") 'Requirements Date
.Range("I2:I" & lngLZeile).Copy wsMSPT.Range("I3") 'Receipt Date
.Range("J2:J" & lngLZeile).Copy wsMSPT.Range("J3") 'Receipt Element
.Range("K2:K" & lngLZeile).Copy wsMSPT.Range("K3") 'Receipt Element No.
.Range("L2:L" & lngLZeile).Copy wsMSPT.Range("L3") 'MRP Controller
.Range("P2:P" & lngLZeile).Copy wsMSPT.Range("M3") 'POItem
.Range("Q2:Q" & lngLZeile).Copy wsMSPT.Range("N3") 'Vendor Code
.Range("R2:R" & lngLZeile).Copy wsMSPT.Range("O3") 'Vendor
.Range("S2:S" & lngLZeile).Copy wsMSPT.Range("P3") 'Delivery Date
.Range("A" & lngLZeile).AutoFilter Field:=14
End With

Anzeige
AW: Apropo Vereinfachen
27.03.2019 13:21:13
Daniel
Hi
Hier wäre eine mögliche Vereinfachung, die kopierten Zellblöcke so groß wie möglich zu machen, auch über mehrere Spalten.
Bspw kannst du "A2:Cxx"als Block nach "A3" kopieren und musst nicht jede Spalte einzeln kopieren.
Geht halt immer soweit, wie du in Quelle und Ziel lückenlos zusammenhängende Zellen hast.
Gruß Daniel

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige