Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
152to156
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
152to156
152to156
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Copy und Paste abfangen?

Copy und Paste abfangen?
02.09.2002 15:10:08
Maria Winter
Hallo Experten!

Wie kann ich Copy und Paste des Users abfangen und durch meinen eigenen Makrocode bereichern? Hab keinen passenden Event gefunden.

Danke für alle sachdienlichen Hinweise.

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

Betreff
Datum
Anwender
Anzeige
Re: Copy und Paste abfangen?
02.09.2002 16:22:28
dänu
Wenn du Drag&Drop ausschalten willst, kannst du unter menu EXTRAS - OPTIONEN, Register "Bearbeiten", Drag "Drag & Drop von zellen aktivieren" deaktivieren.
Nein, ich will nur ein stabileres Copy/Paste
02.09.2002 16:31:11
Maria Winter
Hi dänu!

Nein, ich will kein Drag & Drop deaktivieren. Ich will beim Copy den Range als Object zwischenspeichern, damit es nicht schon vor dem Paste irgendwo im Nirwana verlorengeht, so wie es gerne mal bei Excel passiert und ganz besonders in einem ganz speziellen Fall, der für unsere User ziemlich nervig ist.

Dieses Objekt will ich dann beim Paste einbasteln.

Hört sich vielleicht wüst an, ist auch erstmal ins Unreine gedacht, aber ich hoffe es läßt sich irgendwie regeln.

Greetinx

Maria

Anzeige
Re: Nein, ich will nur ein stabileres Copy/Paste
02.09.2002 19:05:42
Anugyan
Hi Maria,
nur so mal als Idee: wenn du im Sub Worksheet_SelectionChange
If Application.CutCopyMode = True Then ...
überprüfst ob gerade nach dem Kopieren etwas in der Zwischenablage ist, kannst du dieses sichern und weiterbearbeiten.

Eine andere Idee, die ich einmal für einen Teilbereich("Plan")eines Tabellenblattes verwirklicht habe: der Anwender doppelklickt auf die Zelle die er kopieren möchte und beim nächsten klick im zulässigen Bereich des "Plans" wird der Wert eingefügt. (Wenn Auswahlbereich und Zielbereich immer gleich groß sind, läßt sich der Kopiervorgang auch auf mehere Zellen gleichzeitig per Makro erweitern).

Public cFlag As Boolean, vntZwiWert, objZwiAdr As Range
Sub Worksheet_SelectionChange(ByVal Target As Range)
If cFlag = False Then Exit Sub
If Not Intersect(Range("Plan"), Target) Is Nothing Then
cFlag = False
Target.Value = vntZwiWert
End If
End Sub
Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("Plan"), Target) Is Nothing Then
cFlag = True 'Spezialkpiermodus
Cancel = True 'keine Zellbearbeitung nach Doppelklick
Set objZwiAdr = Target
vntZwiWert = objZwiAdr.Value
End If
End Sub

Vielleicht beschreibst du auch nochmal genau, wo und wie bei den Anwendern etwas beim Kopieren verloren geht.

Gruss Anugyan

Anzeige
Wo es verloren geht
03.09.2002 10:02:25
Maria Winter
Der Zwischenablageninhalt geht verloren, wenn man zwei Dateien parallel offen hat und von einer in die andere kopieren will. Die eine ist ein ziemlich makroträchtiges Reporting-File, die andere frei wählbar.

Ich habe es hier reproduzieren können, und das Problem ist ja auch bekannt, weil Excel die Zwischenablage ja anders nutzt als andere Programme.

Ich will halt daß der User so wenig wie möglich von eventuellen Basteleien an der Copy-and-Paste-Funktionalität mitkriegt, d.h. daß sich die Lösung vom look-and-feel nicht weiter von Excel unterscheidet.

Ich habe jetzt erst einmal mit OnKey die Shortcuts abgefangen, mit dem Rest bastel ich noch.


Anzeige
Application.CutCopyMode = true schlägt nicht an
03.09.2002 12:06:08
Maria Winter
Hi Anugyan!

Deinen Tip mit dem

Sub Worksheet_SelectionChange
If Application.CutCopyMode = True Then ...

fand ich einen klasse Ansatz - nur funzt es nicht. Die Tastatur-Shortcuts hab ich mittlerweile per OnKey abgefangen, mit Iconleiste und Menu wird es schwieriger, weil es auf unterschiedlichsprachigen Excel-Versionen laufen soll.

Da wäre mir Deine Variante sehr entgegengekommen.

Objekt kopieren und pastieren geht BTW so wie ich mir das vorgestellt hatte.

Re: Wo es verloren geht
04.09.2002 00:58:21
Anugyan
Hi Maria,
entschuldige meinen Flüchtigkeitsfehler, es mußte natürlich

If Not Application.CutCopyMode = False Then ...

heißen; da CutCopyMode laut VBA-Hilfe nur den Wert False, xlCut oder xlCopy annehmen kann.

Du hast immer noch nicht genau erklärt, warum beim Wechsel in die andere Datei nach dem Kopieren der Wert verloren geht(hast du schon versucht dies im Einzelschrittmodus herauszufinden?).
Gruss Anugyan

Anzeige
Re: Wo es verloren geht
04.09.2002 09:34:24
Maria Winter
Warum es verloren geht kann 1000 verschiedene Gründe haben, u.a. liegt es wohl an Makros, die Eingaben in den verschiedenen regional settings so gradebiegen, daß die Formeln etwas damit anfangen können.

Das mit dem not false habe ich auch schon probiert, funktioniert irgendwie leider auch nicht. Ich fange jetzt halt alle Shortcuts und Menu/Icon-Aktionen ab.

Läuft so weit schon ganz gut, der Feinschliff fehlt noch.

251 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige