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

Forumthread: Verschieben der Zelle mit der Maus verhindern

Verschieben der Zelle mit der Maus verhindern
04.01.2005 13:52:54
RobinHood
Hallo,
gibt es eine Möglichkeit in einer Arbeitsmappe das Verschieben einer Zelle mit der Maus durch den Benutzer zu verhindern?
Also Wenn die Zelle ausgewählt wurde, und dann versucht wird den Inhalt zu verschieben in dem man den markierten Rahmen mit der Maus anpacken (linke Taste gedrückt) und in einer anderen Zelle wieder einfügt/verschiebt (linke Maustaste wieder losläßt). - Alles verstanden?
Geht das? (Sonst kommt nämlich meine Formele im nächsten Tabellenblatt durcheinander)
Hilfsweise habe ich schon herausgefunden im Makroeditor unter DieseArbeitsmappe einzugeben:

Private Sub Workbook_Activate()
Application.CellDragAndDrop = False
End Sub

Was aber zur folge hat, daß das kopieren auch nicht mehr funktioniert, und bei alle anderen Arbeitsmappen die geöffnet sind auch diese Einschränkungen bestehen.
Danke für eure Hilfe
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Verschieben der Zelle mit der Maus verhindern
ransi
hallo
dann bau das doch nur in die tabelle ein für die das gelten soll:

Private Sub Worksheet_Activate()
Application.CellDragAndDrop = False
End Sub


Private Sub Worksheet_Deactivate()
Application.CellDragAndDrop = True
End Sub

man kann jetzt aber immer noch :
rechte maus-kopieren/ausschneiden
bearbeiten-kopieren/ausschneiden
strg+c
strg+x
.
.
.
ransi
Anzeige
AW: Verschieben der Zelle mit der Maus verhindern
Robin
Juhu... klappt ....klar ich muß es beim verlassen wieder deaktivieren.
Danke
AW: Verschieben der Zelle mit der Maus verhindern
04.01.2005 14:39:57
Robin
Hmmm... klappt doch noch nicht ganz.
Jetzt möchte ich auch noch das ausschneiden und einfügen verbieten, da sonst mein Bezug in dem anderen Blatt durcheinander kommt.
Also in Tabelle1 kann in den Zellen A1:F10 eine Eingabe durch den Benutzer erfolgen.
In Tabelle2 steht dann in den Zellen A1:F10 jeweils die Formel
in Zelle A1/ =Tabelle1!A1
in Zelle A2/ =Tabelle1!A2 ...usw
wenn jetzt in der Tabelle1 durch DragandDrob oder ausschneiden/einfügen die Zellen verschoben werden steht in Tabelle2 kein Ergebnis, sondern nur noch #BEZUG!
Wie kann ich das verhindern, oder gibt es eine andere Formel.
Anzeige
AW: Verschieben der Zelle mit der Maus verhindern
04.01.2005 14:03:22
Matthias
Hallo Robin,
also dass das Kopieren von Zellen nicht mehr funktioniert, kann nicht nicht nachvollziehen...
Option Explicit
Dim CDD As Boolean
Private Sub Workbook_Activate()
Application.CellDragAndDrop = False
End Sub
Private Sub Workbook_Deactivate()
Application.CellDragAndDrop = CDD
End Sub
Private Sub Workbook_Open()
CDD = Application.CellDragAndDrop
End Sub
Damit merkt sich Excel beim Öffnen den alten Zustand von CellDragAndDrop und stellt ihn beim Deaktivieren der Mappe wieder her.
Gruß Matthias
Anzeige
AW: Verschieben der Zelle mit der Maus verhindern
04.01.2005 14:40:58
Robin
Hmmm... klappt doch noch nicht ganz.
Jetzt möchte ich auch noch das ausschneiden und einfügen verbieten, da sonst mein Bezug in dem anderen Blatt durcheinander kommt.
Also in Tabelle1 kann in den Zellen A1:F10 eine Eingabe durch den Benutzer erfolgen.
In Tabelle2 steht dann in den Zellen A1:F10 jeweils die Formel
in Zelle A1/ =Tabelle1!A1
in Zelle A2/ =Tabelle1!A2 ...usw
wenn jetzt in der Tabelle1 durch DragandDrob oder ausschneiden/einfügen die Zellen verschoben werden steht in Tabelle2 kein Ergebnis, sondern nur noch #BEZUG!
Wie kann ich das verhindern, oder gibt es eine andere Formel.
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Zelle verschieben in Excel verhindern


Schritt-für-Schritt-Anleitung

Um das Verschieben von Zellen mit der Maus in Excel zu verhindern, kannst Du VBA (Visual Basic for Applications) verwenden. Hier ist eine einfache Anleitung:

  1. Öffne Deine Excel-Arbeitsmappe.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Wähle im Projektfenster die Arbeitsmappe aus, in der Du das Verschieben der Zellen verhindern möchtest.

  4. Doppelklicke auf DieseArbeitsmappe und füge den folgenden Code ein:

    Private Sub Workbook_Activate()
       Application.CellDragAndDrop = False
    End Sub
    
    Private Sub Workbook_Deactivate()
       Application.CellDragAndDrop = True
    End Sub
  5. Schließe den VBA-Editor und speichere die Änderungen.

  6. Wenn Du die Arbeitsmappe öffnest, sollte das Verschieben der Zellen mit der Maus nicht mehr möglich sein.

Wenn Du nur in einem bestimmten Blatt die Funktionalität ändern möchtest, kannst Du den Code in das spezifische Arbeitsblatt einfügen:

Private Sub Worksheet_Activate()
    Application.CellDragAndDrop = False
End Sub

Private Sub Worksheet_Deactivate()
    Application.CellDragAndDrop = True
End Sub

Häufige Fehler und Lösungen

  • Problem: "Excel Zellen verschieben geht nicht mehr" und das Kopieren funktioniert ebenfalls nicht.

    • Lösung: Stelle sicher, dass Du den Code korrekt in DieseArbeitsmappe oder im spezifischen Arbeitsblatt eingefügt hast. Der Code sollte den Zustand von Application.CellDragAndDrop wiederherstellen, wenn Du die Arbeitsmappe verlässt.
  • Problem: Du kannst immer noch Zellen mit der rechten Maustaste kopieren oder ausschneiden.

    • Lösung: Der VBA-Code verhindert nur das Drag-and-Drop-Verschieben. Um das Ausschneiden und Einfügen zu verhindern, kannst Du zusätzliche Sicherheitsmaßnahmen ergreifen, z.B. indem Du das Kontextmenü deaktivierst.

Alternative Methoden

  1. Blattschutz aktivieren:

    • Du kannst den Blattschutz aktivieren, um die Bearbeitung von Zellen zu verhindern. Gehe zu Überprüfen > Blatt schützen, um die gewünschten Einstellungen vorzunehmen.
  2. Datenüberprüfung:

    • Setze Datenüberprüfungen für bestimmte Zellen, um sicherzustellen, dass nur die gewünschten Eingaben möglich sind.

Praktische Beispiele

  • Beispiel 1: In Tabelle1 sollen die Zellen A1:F10 bearbeitbar sein, während die Formeln in Tabelle2 auf diese Zellen verweisen. Wenn Du das Verschieben der Zellen in Tabelle1 verhinderst, bleibt die Integrität der Formeln in Tabelle2 erhalten.

  • Beispiel 2: Wenn Du mehrere Arbeitsblätter hast, kannst Du den oben genannten VBA-Code in jedes spezifische Blatt einfügen, um sicherzustellen, dass das Verschieben der Zellen nur dort deaktiviert ist, wo Du es benötigst.


Tipps für Profis

  • Nutze den Workbook_Open-Event, um den Zustand von CellDragAndDrop zu speichern und wiederherzustellen. Der Code könnte so aussehen:

    Option Explicit
    Dim CDD As Boolean
    
    Private Sub Workbook_Open()
       CDD = Application.CellDragAndDrop
    End Sub
    
    Private Sub Workbook_Activate()
       Application.CellDragAndDrop = False
    End Sub
    
    Private Sub Workbook_Deactivate()
       Application.CellDragAndDrop = CDD
    End Sub
  • Teste den Code gründlich in einer Kopie Deiner Arbeitsmappe, um sicherzustellen, dass alles wie gewünscht funktioniert.


FAQ: Häufige Fragen

1. Kann ich das Verschieben von Zellen in Excel 2016 oder 2019 verhindern?
Ja, der oben beschriebene VBA-Code funktioniert in Excel 2016 und 2019.

2. Was passiert, wenn ich den Blattschutz aktiviere?
Der Blattschutz verhindert nicht nur das Verschieben von Zellen, sondern kann auch das Bearbeiten anderer Zellen, das Löschen und das Formatieren einschränken.

3. Wie kann ich verhindern, dass Benutzer Zellen ausschneiden?
Du kannst das Kontextmenü deaktivieren oder VBA verwenden, um die Funktionalität von Strg+C und Strg+X zu blockieren.

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