Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1796to1800
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

paste-methode des range-objektes

paste-methode des range-objektes
16.12.2020 08:41:02
Sabrina
Hallo zusammen,
ich benötige eure Hilfe.
Ich habe folgenden Code programmiert:
Sheets("erl. Stück_Zeiten").Range("D89:L89").Select
Selection.Copy
Workbooks.Open ("DATENSCHUTZ\PFAD\2020_12_03_Chartverläufe_KuK13_SL_V2.0.xlsm") 'Bitte Pfad, Dateiname und Dateiendung anpassen!!!
Sheets("Mengen").Unprotect
With Worksheets("Mengen")
Set rngDatum = .Range("C5:C450").Find(Worksheets("Mengen").Range("C2").Value, LookIn:=xlValues, lookat:=xlWhole)
rngDatum.Offset(0, 1).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Es werden Daten aus einer anderen Datei kopiert, die Datei, in welche eingefügt wird, wird geöffnet und der Blattschutz wird rausgenommen.
Nun sollen die kopierten Daten bei dem Datum, welches er in C2 findet eingefügt werden.
Der Befehl: PasteSpecial xlPasteValues funktioniert nicht.
Ich habe bereits den Befehl mit dem folgenden getauscht:
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

nur leider erhalte ich auch dann die Fehlermeldung die ''paste-methode des range-objektes konnte nicht ausgeführt werden''
Ich arbeite bereits seit Wochen in dieser Datei und mit dem Makro, vielleicht bin ich einfach blind und sehe meinen Fehler nicht.
Hat jemand eine Idee, was der Fehler ist?
Danke im Voraus!
LG
Sabrina

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: paste-methode des range-objektes
16.12.2020 08:55:28
Hajo_Zi
Hallo Sabrina,
öffne die Datei Vorher und Suche.
If Not rngDatum Nothing Then
ThisWorkbook.Sheets("erl. Stück_Zeiten").Range("D89:L89").Copy
rngDatum.Offset(0, 1).PasteSpecial xlPasteValues
End if
Select, Activate usw. ist in VBA zu 99,8% nicht notwendig.
Der Cursor ist kein Hund der überall rumgeführt werden muss.
Hinweise zu select usw. Hajo-Excel.de
Hinweise zu select usw. Online-Excel.de
Hinweise zu select usw. Online-Excel.de
Der Cursor ist kein Hund, der überall rum geführt werden muss.

Anzeige
AW: paste-methode des range-objektes
16.12.2020 09:00:45
Daniel
Hi
das Problem ist, dass es in Excel Aktionen gibt, bei denen der Zwischenspeicher geleert wird.
Wenn du so eine Aktion zwischen Copy und Paste ausführst, dann funktioniert das Paste natürlich nicht mehr, weil der Zwischenspeicher leer ist.
das Aufheben des Blattschutzes ist so eine Aktion.
dh du müsstest erst die Zieldatei öffnen und dort den Blattschutz aufheben, und dann danach erst das Copy und Paste ausführen.
Copy und Paste sollten daher immer möglichst direkt nacheinander ausgeführt werden.
Andere Möglichkeit:
wenn nur Werte eingefügt werden sollen, kannst du dir die auch in eine Array-Variable einlesen und dann von dort aus einfügen, die Variablen behalten ihren Wert solange das Makro läuft:
Allerdings muss man dabei beachten, dass man jetzt den kompletten Zielbereich angeben muss, es reicht dabei nicht, die erste Zelle anzugeben:
arrWerte = Sheets("erl. Stück_Zeiten").Range("D89:L89").Value
rngDatum.Offset(0, 1).Resize(Ubound(arrWerte, 1), Ubound(arrWerte, 2)).value = arrWerte
Gruß Daniel
Anzeige
AW: paste-methode des range-objektes
16.12.2020 09:20:36
Sabrina
Hallo zusammen,
ich habe nun erst die Datei öffnen lassen und den Blattschutz auf den jeweiligen Blättern entfernt, kopiere die Daten und füge sie ein. Am Ende des Codes wird der Blattschutz wieder eingefügt.
Ich danke euch für eure Hilfe!
Vorab schon einmal trotz der aktuellen Situation Frohe Weihnachten!
LG
Sabrina

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige