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

Forumthread: CutCopyMode

CutCopyMode
29.01.2003 11:21:59
Franz W.
Hallo Forum,

habe mir folgenden Code aufgezeichnet und möchte ihn nun vereinfachen:

Range("F15:F23").Select
Selection.Copy
Range("E15").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("F15:F23").Select
Application.CutCopyMode = False
Selection.ClearContents

Hab dazu schon was rausgestrichen (Dank an Hajos ständige Wiederholung: "Auf Select, Activate und ähnliches kann in VBA verzichtet werden" :-) ):

Range("F15:F23").Copy
Range("E15").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("F15:F23").ClearContents
Application.CutCopyMode = False

Womit ich nichts anfangen kann ist jetzt noch: "Application.CutCopyMode = False" ??? Was bedeutet das bitte? Aus der Hilfe werde ich leider auch so schlau. Ist das wichtig? In diesem Zusammenhang? Kann ich das rauslöschen? Ich hab's schon mal weggelassen und es scheint keinen Einfluss genommen zu haben: hab ich da vielleicht was übersehen?

Für Eure Hilfe Danke im Voraus

Gruß
Franz



Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: CutCopyMode
29.01.2003 11:27:56
Hajo_Zi

Hallo Franz

bei copy wird der Bereich markiert mit dieser Linie (ablage in Zwischenablage) und dies wird aufgehoben.

Schaue mal in die VBA Hilfe von PasteSpecial der Teil SkipBlanks:= False, Transpose:=False kann entfallen da Standard.

Sollte mein ständiges schreiben gegen Select doch gewirkt haben.

Gruß Hajo

Anzeige
Wiederholung ist die Mutter des Erfolges
29.01.2003 11:32:38
Franz W.

Hallo Hajo,

ja es wirkt (wenn auch manchmal langsam) und es ist wichtig. Nichts ist hilfreicher als das geduldige, gebetsmühlenartige Wiederholen. Manche (solche wie ich) brauchen das. Vielen Dank

Gruß
Franz

Nachfrage
29.01.2003 12:18:10
Franz W.

Hallo Hajo,

wenn ich die Hilfe richtig lese, dann ist auch bei Operation der Standardwert = xlNone (Hilfe: "Standardwert ist xlPasteSpecialOperationNone"). Seh ich das richtig, dass das dann auch weggelassen werden kann?

Gruß
Franz

Anzeige
Re: Nachfrage
29.01.2003 12:24:25
Hajo_Zi

Hallo Franz

so genau habe ich das auch noch nicht gelesen. (warum mußte ich auch auf die Hilfe verweisen)
Du hast Recht darauf kann auch verzichtet werden.

Gruß hajo


Re: Nachfrage
29.01.2003 12:31:09
Franz W.

Hallo Hajo,

sorry, wollte Dich nicht kompromittieren :-))). Vielen Dank

Gruß
Franz

Re: Nachfrage
29.01.2003 12:42:13
Hajo_Zi

Hallo Franz

man lernt nie aus

Gruß Hajo

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Anwendung von CutCopyMode in Excel VBA


Schritt-für-Schritt-Anleitung

Um Application.CutCopyMode in Excel VBA zu verwenden, befolge diese Schritte:

  1. Range auswählen und kopieren:

    Range("F15:F23").Copy
  2. Zielbereich festlegen und einfügen:

    Range("E15").PasteSpecial Paste:=xlValues
  3. Inhalt im Quellbereich löschen:

    Range("F15:F23").ClearContents
  4. CutCopyMode beenden:

    Application.CutCopyMode = False

Durch das Setzen von Application.CutCopyMode = False wird der Kopiermodus aufgehoben, was bedeutet, dass die Auswahl nicht mehr mit einer gestrichelten Linie umrandet ist.


Häufige Fehler und Lösungen

  • Fehler: Application.CutCopyMode = False funktioniert nicht.

    • Lösung: Überprüfe, ob der Kopiervorgang tatsächlich ausgeführt wurde. Wenn der Befehl Copy nicht erfolgreich war, wird CutCopyMode nicht richtig beendet.
  • Fehler: Der Quellbereich bleibt markiert.

    • Lösung: Stelle sicher, dass du Application.CutCopyMode = False nach dem Einfügen aufrufst, um die Markierung aufzuheben.

Alternative Methoden

Wenn du den CutCopyMode nicht verwenden möchtest, gibt es alternative Ansätze:

  • Direktes Zuweisen: Anstatt zu kopieren und einzufügen, kannst du Werte direkt zuweisen:
    Range("E15:E23").Value = Range("F15:F23").Value
  • Verwendung von Arrays: Wenn du mit großen Datenmengen arbeitest, kannst du die Werte in ein Array laden und dann wieder in die Zellen schreiben.

Praktische Beispiele

Hier ist ein Beispiel, wie du CutCopyMode in einem vollständigen VBA-Skript verwenden kannst:

Sub BeispielCutCopyMode()
    ' Werte kopieren
    Range("F15:F23").Copy
    ' Werte einfügen
    Range("E15").PasteSpecial Paste:=xlValues
    ' Quellbereich leeren
    Range("F15:F23").ClearContents
    ' CutCopyMode beenden
    Application.CutCopyMode = False
End Sub

Tipps für Profis

  • Verwende Application.CutCopyMode = False immer, um sicherzustellen, dass der Benutzer nicht in einem unerwünschten Kopiermodus bleibt.
  • Du kannst auch Application.CutCopyMode = True setzen, um den Kopiermodus manuell zu aktivieren, falls nötig.
  • Achte darauf, dass du CutCopyMode nur dann verwendest, wenn du tatsächlich mit Kopier- und Einfügevorgängen arbeitest; andernfalls könnte es überflüssig sein.

FAQ: Häufige Fragen

1. Was bedeutet Application.CutCopyMode = False? Es beendet den Kopiermodus und entfernt die gestrichelte Umrandung um den kopierten Bereich.

2. Ist Application.CutCopyMode in allen Excel-Versionen verfügbar? Ja, dieser Befehl ist in allen gängigen Excel-Versionen verfügbar, die VBA unterstützen.

3. Kann ich Application.CutCopyMode weglassen? Ja, wenn du sicher bist, dass kein Kopiervorgang mehr aktiv ist, kannst du diesen Befehl möglicherweise weglassen, jedoch ist es eine gute Praxis, ihn zu verwenden, um den Status klarzustellen.

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