Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Copy / Paste blockiert

Copy / Paste blockiert
17.08.2022 16:55:13
Dieter
Moin aus Hamburg,
das Kopieren von zwischen zwei Blättern derselben Arbeitsmappe funktioniert nicht mehr:
- Markieren mit Maus
- Ctrl-C oder über rechte Maustaste
- Wechsel zum Zielblatt
- Ctrl-V oder rechte Maustaste (Einfügeoptionen ausgeblendet) erfolglos
- Quell- und Zielblatt sind beide ungeschützt
Allerdings funktioniert das Kopieren und Einfügen zwischen zwei Blättern über die Bearbeitungsleiste. Das Kopieren und Einfügen innerhalb desselben Blattes funktioniert weiterhin uneingeschränkt, ebenso zwischen der betroffenen und einer zweiten Arbeitsmappe.
Weder ein Neustart der Arbeitsmappe noch ein Neustart des Computers beseitigen diesen Fehler.
Dieser Fehler ist erst aufgetaucht, nachdem ich ein Makro verwende, das bei verschiedenen Gelegenheiten aufgerufen wird. Ein Blockieren dieses Makros durch ein'Exit Sub' gleich zu Beginn hilft auch nicht. Ich vermute, dass sich, warum auch immer, eine grundsätzliche Einstellung der betroffenen Arbeitsmappe geändert hat.
Hier der Code des verdächtigen Makros mit vielem Dank vorab für Eure Hilfe:

Sub Fil_BldImgFilLst()
'2022-08-17
'adjusts the current list with filenames and time stamps to the
'current number of active image files and generates a list with
'the current filenames and time stamps
'Exit Sub
'declarations
Dim ImgLstSiz As Integer 'existing entries plus blanks
Dim TgtRng As Range 'target range
Dim DelRows As Integer 'rows to delete
Dim RefRow As Integer 'reference row for deletion and insertion of rows
Dim ImgDir As String 'folder with the image files
Dim ImgFilNamExt As String 'extension of image file names
Dim ImgFilNbr 'number of image files
Dim I As Integer 'loop counter
'unprotect worksheet 'Fil'
ThisWorkbook.Sheets("Fil").Unprotect
'read variables
ImgLstSiz = ThisWorkbook.Sheets("Fil").Range("Fil_ImgLstSiz").Value
'clear file name list and time stamp list
Set TgtRng = ThisWorkbook.Sheets("Fil").Range("Fil_ImgLst")
For I = 1 To ImgLstSiz
TgtRng(I, 1).Value = ""
TgtRng(I, 13).Value = ""
Next I
'reduce empty list to 10 rows
DelRows = ImgLstSiz - 10 'rows to delete
RefRow = ThisWorkbook.Sheets("Fil").Range("Fil_ImgLstStrt").Value + 5
For I = 1 To DelRows
ThisWorkbook.Sheets("Fil").Rows(RefRow).Delete
Next I
'read current path of actual image files and current extension for image files
ImgDir = ThisWorkbook.Sheets("Fil").Range("Fil_ActImgDir").Value
ImgFilNamExt = ThisWorkbook.Sheets("Fil").Range("Fil_ImgFilNamExt").Value
'number of existing image files
Dummy = Dir(ImgDir & "*" & ImgFilNamExt)
ImgFilNbr = 0
Do While Dummy  ""
ImgFilNbr = ImgFilNbr + 1
Dummy = Dir()
Loop
    'insert required number of empty rows and paste formulas to these rows
For I = 1 To ImgFilNbr
ThisWorkbook.Sheets("fil").Activate
ActiveSheet.Rows(RefRow & ":" & RefRow).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
ActiveSheet.Range((RefRow - 1) & ":" & (RefRow - 1)).Select
Selection.Copy
ActiveSheet.Range("A" & RefRow).Select
ActiveSheet.Paste
Next I
'fill in file names
Set TgtRng = ThisWorkbook.Sheets("Fil").Range("Fil_ImgLst")
Dummy = Dir(ImgDir & "*" & ImgFilNamExt)
I = 1
Do While Dummy  ""
TgtRng(I, 1).Value = Dummy
Dummy = Dir()
I = I + 1
Loop
'fill in time stamps
Set TgtRng = ThisWorkbook.Sheets("Fil").Range("Fil_ImgLst")
ImgDir = ThisWorkbook.Sheets("Fil").Range("Fil_ActImgDir").Value
I = 1
Do While TgtRng(I, 1).Value  ""
TimStmp = FileDateTime(ImgDir & TgtRng(I, 1).Value)
TgtRng(I, 13).Value = "'" & TimStmp
I = I + 1
Loop
'release set variables
Set TgtRng = Nothing
'protect worksheet 'Fil'
ThisWorkbook.Sheets("Fil").Protect
End 

Sub


		
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Copy / Paste blockiert
17.08.2022 17:00:53
Nepumuk
Hallo Dieter,
lade mal die Mappe hoch. Die Daten darin kannst du alle löschen, aber nicht komplette Tabellenblätter.
Gruß
Nepumuk
AW: Copy / Paste blockiert
17.08.2022 17:23:01
Dieter
Moin Nepumuk,
die Arbeitsmappe ist über 12 KB groß und enthält eine Menge von Programmcode, den ich nicht veröffentlichen will. Ein Löschen des Datenanteils wird auch nicht helfen, weil es dann nichts Sinnvolles mehr zum Testen gibt.
Vielleicht geht es auch so:
Im Forum habe ich inzwischen den Beitrag "VBA blockiert copy and paste von MRInterNETT vom 09.09.2014 21:16:12" gefunden, der ein ähnliches Phänomen beschreibt. Hier wird ein Zusammenhang mit dem Ein- und Ausblenden von Rollbalken beschrieben, den ich nicht ganz verstehe.
Dieses Ein- und Ausblenden per Makro zusammen mit dem Wechsel zwischen Arbeitsblättern verwende ich ebenfalls, ohne dass es bisher Probleme gegeben hat.
Vielleicht kannst Du mir mit einer Erklärung hierzu weiterhelfen?
Vielen Dank
Dieter
Anzeige
AW: Copy / Paste blockiert
17.08.2022 17:31:17
Nepumuk
Hallo Dieter,
wenn du im Activate- / Deactivate-Event einer Tabelle eine Zelle änderst wird die Office-Zwischenablage gelöscht.
Mehr kann ich nicht sagen, da ich deinen Code nicht kenne.
Gruß
Nepumuk
AW: Copy / Paste blockiert
21.08.2022 12:58:57
Dieter
Moin Nepumuk,
Dein Hinweis hat mir geholfen, die Ursache einzukreisen. Die Situation scheint so auszusehen:
Jedes meiner Arbeitsblätter hat eine 'Worksheet_Activate()' Routine. Wenn ich Dich richtig verstanden habe, ist die das event, das den Inhalt der Zwischenablage löscht, die mir dann zum Einfügen auf dem aktivierten Arbeitsblatt nicht mehr zur Verfügung steht. Das deckt sich mit dem beobachteten Fehler.
Eine mögliche Lösung stelle ich mir so vor:
- Jedem Worksheet ein zusätzliches 'Worksheet_Deactivate()' zuordnen
- Darin den Inhalt der Zwischennablage in eine 'globale Variable' retten
- 'global': Variable bleibt außerhalb des 'erzeugenden Makros' erhalten
- Mit dem nächsten 'Worksheet_Activate()' Variable in Zwischenablage zurückholen
Meine Fragen dazu:
- Wo und wie diese 'globale Variable' dauerhaft definieren?
- In 'Workbook_Open()' mit Dim ... As?
- Gleiches für die Inhalt der Zwischenablage als globales Datenobjekt?
- Zuweisung des Inhalts an das Datenobjekt bekannt
- Wie das Datenobjekt in die Zwischenablage zurückschreiben?
- Jeder Typ Datenobjekt, so auch mit Strg-C kopierte Tabellenbereiche
Schon mal vielen Dank und beste Grüße
Dieter
Anzeige
AW: Copy / Paste blockiert
21.08.2022 13:06:03
Nepumuk
Hallo Dieter,
das wird nicht funktionieren. In die Office-Zwischenablage kannst du nur per Copy/Cut Methode schreiben.
Gruß
Nepumuk
AW: Copy / Paste blockiert
21.08.2022 16:42:46
Dieter
Moin Nepumuk,
habe versucht, das nachzuvollziehen:
- neues Modul 'Glb'
- darin als einziges Makro:
Option Explicit
Global ClpBrd As New DataObject
- jedes Arbeitsblatt erhält 'Worksheet_Deactivate' mit
ClpBrd.GetFromClipboard
- zusätzlich in jedem Arbeitsblatt 'Worksheet_Activate' erweitert mit:
ClpBrd.PutInClipboard
PutInClipboard bricht mit Fehler 'DataObject:PutInClipboard Nicht implementiert' ab (Debugger), wenn vorher nichts mit Ctrl-C oder über rechte Maustaste ... kopiert wurde.
Wenn ein Bereich aus einer Tabelle kopiert wurde, gibt es keinen Fehler, heißt, dass die Variable ClpBrd etwas enthält. Das erscheint aber nicht nach Strg-V bzw. über rechte Maustaste ... nicht auf dem Tabellenblatt. Das mit dem Fehler bei "leerer" Variable ClpBrd wird sich irgendwie lösen lassen.
Der Makroeditor scheint das 'PutInClipboard' zu "kennen", denn er bietet es als Option zu ClpBrd. an, ebenso wie 'GetFromClipboard'.
Entweder ist 'NewData Object' nicht die richtige Zuweisung zu ClpBrd, weshalb sich ein kopierter Bereich nicht in die Zwischenablage zurückschreiben lässt, oder das Zurückschreiben ist in der Excel- bzw. Office-Umgebung grundsätzlich nicht möglich, es sei denn, es gibt ein workaround.
Beste Grüße
Dieter
Anzeige
AW: Copy / Paste blockiert
21.08.2022 17:26:13
max.kaffl@gmx.de
Hallo Dieter,
das DataObject schreibt in das Windows-Clipboard nicht in das von Office.
Gruß
Nepumuk
AW: Copy / Paste blockiert
21.08.2022 19:47:42
Dieter
Moin Nepumuk,
ja, für mich ist wesentlich, ob ich mit dem DataObject (Variable 'ClpBrd') ins clipboard schreiben kann, was ich mit 'Strg-C' vorher kopiert, dann in der Variablen 'ClpBrd' zwischengespeichert habe.
Wie schon geschrieben, 'ClpBrd' enthält tatsächlich Inhalt, der sich nur nicht wieder in das clipboard zurückschreiben lässt.
Beste Grüße
Dieter
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Copy / Paste Blockiert in Excel: Lösungen und Tipps


Schritt-für-Schritt-Anleitung

Wenn das Kopieren und Einfügen in Excel nicht funktioniert, kannst du die folgenden Schritte ausführen, um das Problem zu beheben:

  1. Überprüfe die Excel-Optionen:

    • Gehe zu Datei > Optionen > Erweitert.
    • Stelle sicher, dass die Option "Zwischenablage verwenden" aktiviert ist.
  2. Zwischenablage leeren:

    • Öffne die Zwischenablage (Windows-Taste + V) und leere sie, um sicherzustellen, dass keine blockierten Inhalte vorhanden sind.
  3. Makros deaktivieren:

    • Manchmal können Makros das Kopieren und Einfügen blockieren. Deaktiviere alle Makros und teste, ob das Problem weiterhin besteht.
  4. Excel neu starten:

    • Schließe Excel vollständig und starte das Programm neu.
  5. Windows-Updates überprüfen:

    • Stelle sicher, dass dein Windows auf dem neuesten Stand ist, da Updates manchmal Komplikationen verursachen können.

Häufige Fehler und Lösungen

  • Fehler: Excel kopieren und einfügen funktioniert nicht
    Lösung: Überprüfe die Berechtigungen der Arbeitsmappe. Wenn sie schreibgeschützt ist, kann dies Probleme verursachen.

  • Fehler: Excel Strg C funktioniert nicht
    Lösung: Teste die Funktionalität mit der rechten Maustaste. Wenn auch das nicht funktioniert, könnte ein Add-In die Ursache sein. Deaktiviere alle Add-Ins und teste erneut.

  • Fehler: Rechte Maustaste kopieren/einfügen geht nicht
    Lösung: Prüfe, ob ein externes Programm wie ein Clipboard-Manager oder ein Sicherheitsprogramm die Funktionalität einschränkt.


Alternative Methoden

Wenn die Standardmethoden nicht funktionieren, probiere diese Alternativen:

  • Kopieren über die Bearbeitungsleiste:

    • Markiere den gewünschten Bereich und klicke auf die Bearbeitungsleiste. Verwende Strg+C, um zu kopieren, und wechsle dann zum Zielblatt, um Strg+V zu verwenden.
  • Formatierte Einfügeoptionen nutzen:

    • Klicke auf das kleine Dropdown-Symbol, das erscheint, wenn du mit der rechten Maustaste auf die Zelle klickst, und wähle eine der Einfügeoptionen aus.

Praktische Beispiele

  1. Kopieren innerhalb eines Blattes:

    • Markiere den Bereich, drücke Strg+C, gehe zu der Zelle, wo du die Daten einfügen möchtest, und drücke Strg+V.
  2. Kopieren zwischen verschiedenen Arbeitsmappen:

    • Öffne beide Arbeitsmappen, und nutze die Standardmethoden (Strg+C und Strg+V), um Daten zu übertragen.

Tipps für Profis

  • Verwende die Zwischenablage: Nutze die Windows-Zwischenablage, um mehrere Inhalte gleichzeitig zu kopieren und auszuwählen, was du einfügen möchtest.

  • VBA zur Automatisierung: Wenn du häufige Copy-Paste-Fehler hast, erwäge die Automatisierung durch VBA-Skripte. Diese können helfen, das Kopieren und Einfügen effizienter zu gestalten.

  • Einstellungen überprüfen: Überprüfe regelmäßig die Excel-Optionen und die Zwischenablage-Einstellungen, um sicherzustellen, dass keine Änderungen vorgenommen wurden, die dein Kopieren und Einfügen beeinträchtigen könnten.


FAQ: Häufige Fragen

1. Warum funktioniert Strg+C nicht in Excel?
Es kann mehrere Gründe geben, z. B. ein blockierter Inhalt oder ein aktives Makro, das die Zwischenablage löscht.

2. Was kann ich tun, wenn die rechte Maustaste kopieren/einfügen nicht funktioniert?
Überprüfe die Excel-Optionen und deaktiviere alle Add-Ins, die möglicherweise die Funktionalität beeinträchtigen.

3. Wie kann ich sicherstellen, dass die Zwischenablage funktioniert?
Öffne die Windows-Zwischenablage mit Windows-Taste + V, um den Inhalt zu überprüfen. Wenn dort nichts angezeigt wird, funktioniert die Zwischenablage möglicherweise nicht richtig.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige