Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bei doppelklick Zelle in andere Tabelle kopieren

Bei doppelklick Zelle in andere Tabelle kopieren
Rüdi
Hallo zusammen,
ich habe leider keine große Erfahrung mit VBA, aber trotzdem eine (für mich) sehr anspruchsvolle Aufgabe vor mir...
Eine kurze Beschreibung:
In Tabelle1 befindet sich eine Auflistung von Verträgen.
In Tabelle2 die Verträge der Vorjahre.
Mein Ziel ist es nun, dass bei Doppelklick (und Neueingabe) auf die aktuelle Vertragsnummer (Tabelle1) diese in Tabelle2 eingefügt wird. Die Vertragsnummern ändern sich jedes Jahr und die Tabelle2 soll somit zum Archiv werden um ältere Verträge zurück verfolgen zu können! Dh. die kopierte Zelle sollte sich in der selben Zeile wie in Tabelle1 befinden...
Ich hoffe man kann mit meiner Beschreibung etwas anfangen und wäre für eure Hilfe sehr dankbar.
Bis jetzt habe ich es nur geschafft dass die Zellen in einer Spalte (wahrlos) unter einander eingefügt wurden...
Viele Grüße
Rüdi
Anzeige
AW: Bei doppelklick Zelle in andere Tabelle kopieren
11.05.2012 17:48:45
Dirk
Poste mal bitte dein Makro um zu sehen was du schon hast
Gruß
Dirk
AW: Bei doppelklick Zelle in andere Tabelle kopieren
12.05.2012 10:33:20
Ass
Hi Rüdi
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim akt, r As Range
If Target.Column = 1 Then
Set r = Worksheets("Archiv").Cells(Target.Row, Columns.Count).End(xlToLeft)
If r.Value  Target.Value Then r.Offset(, 1) = Target.Value
Cancel = True
End If
End Sub
Rechtsklick auf den Tabellenreiter, in der der Doppelklick gesteuert werden soll, und genau dort den Code hinein kopieren. Deine Tabelle2 muss den Namen "Archiv" haben - sonst entsprecchend ändern. Das war's auch schon.
Gruß
Rudi
Anzeige
AW: Bei doppelklick Zelle in andere Tabelle kopieren
14.05.2012 08:49:23
Rüdi
Guten morgen Rudi,
zu erst mal Danke für deine Hilfe! Doch leider funktioniert es bei mir noch nicht.
Muss ich noch etwas beachten bzw im Code anpassen?
Grüße
Rüdi
AW: Bei doppelklick Zelle in andere Tabelle kopieren
14.05.2012 22:19:06
Ass
Hallo Rüdi, ist bei mir gelaufen so wie beschrieben.
Wenn du nicht sagen kannst, was konkret nicht funktioniert, dann hilft nur eine Beispieldatei mit Musterdaten hochzuladen.
Gruß
Rudi
Anzeige
AW: Bei doppelklick Zelle in andere Tabelle kopieren
16.05.2012 09:08:19
Rüdi
Hallo Rudi,
ich habe deinen Code im VBA eingefügt, jedoch passiert bei mir überhaupt nichts. Ich glaube ich muss die Spalte bzw Zeile eingeben in der der Doppelklick gemacht wird. Leider weiß ich nicht wie/wo...
Danke für deine Hilfe
Rüdi
AW: Bei doppelklick Zelle in andere Tabelle kopieren
16.05.2012 09:12:57
Hajo_Zi
Hallo Rüdi,
die Spalte ist angegeben
Target.Column = 1
Spalte A

Anzeige
AW: Bei doppelklick Zelle in andere Tabelle kopieren
16.05.2012 10:07:17
Rüdi
Hallo,
da sieht man, dass ich wirklich keine Ahnung habe. ;) Das war der springende Punkt. Bei mir ist es nicht eins sondern Target.Column=6. Danke für den Denkanstoss!
Vielen Dank
Rüdi

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Doppelklick zum Kopieren von Zellen in eine andere Tabelle


Schritt-für-Schritt-Anleitung

Um bei einem Doppelklick auf eine Zelle in Excel diese in eine andere Tabelle zu kopieren, kannst du den folgenden VBA-Code verwenden. Dieser Code geht davon aus, dass du in der ersten Spalte (Spalte A) arbeitest und dass die Ziel-Tabelle den Namen "Archiv" trägt.

  1. Öffne Excel und gehe zu der Tabelle, in der du den Doppelklick registrieren möchtest (z.B. Tabelle1).

  2. Klicke mit der rechten Maustaste auf den Reiter der Tabelle und wähle „Code anzeigen“.

  3. Kopiere den folgenden VBA-Code in das dafür vorgesehene Fenster:

    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
       Dim r As Range
       If Target.Column = 1 Then ' Prüfen, ob die Spalte 1 (A) ist
           Set r = Worksheets("Archiv").Cells(Target.Row, Columns.Count).End(xlToLeft)
           If r.Value <> Target.Value Then r.Offset(, 1) = Target.Value
           Cancel = True ' Verhindert das Editieren der Zelle
       End If
    End Sub
  4. Achte darauf, dass du den Namen "Archiv" anpasst, falls deine Ziel-Tabelle anders heißt.

  5. Schließe den VBA-Editor und teste den Doppelklick in deiner Tabelle.


Häufige Fehler und Lösungen

  • Fehler: Nichts passiert beim Doppelklick.

    • Stelle sicher, dass du den Code korrekt in das Modul der entsprechenden Tabelle eingefügt hast und dass die Spalte richtig angegeben ist (z.B. Target.Column = 1 für Spalte A).
  • Fehler: Zellen werden nicht in der richtigen Zeile kopiert.

    • Überprüfe, ob die Zeilennummer des Target-Objekts korrekt verwendet wird. Der Code sollte sicherstellen, dass die Daten in der gleichen Zeile wie in Tabelle1 eingefügt werden.

Alternative Methoden

Falls du keine VBA-Programmierung verwenden möchtest, kannst du auch die Funktion „Kopieren“ und „Einfügen“ manuell nutzen. Dies ist jedoch weniger automatisiert und erfordert mehr Eingaben. Eine andere Möglichkeit ist die Verwendung von Excel-Formeln, um Daten zwischen Tabellen zu verknüpfen.


Praktische Beispiele

  • Beispiel 1: Wenn du in Tabelle1 in Zelle A2 einen Doppelklick machst, wird der Wert von A2 in die entsprechende Zeile in Tabelle2 (Archiv) eingefügt, solange die Zelle in „Archiv“ leer ist.
  • Beispiel 2: Ändere die Spalte im Code zu Target.Column = 6, wenn du eine andere Spalte verwenden möchtest, z.B. Spalte F.

Tipps für Profis

  • Nutze die Möglichkeit, mehrere Spalten zu bearbeiten, indem du If Target.Column = 1 Or Target.Column = 6 Then verwendest.
  • Experimentiere mit weiteren VBA-Funktionen, um die Automatisierung in Excel zu verbessern, wie z.B. das Einfügen von Zeitstempeln oder das Speichern von Änderungen in eine Log-Tabelle.

FAQ: Häufige Fragen

1. Frage
Kann ich den Code auch für andere Spalten verwenden?
Ja, du kannst Target.Column anpassen, um andere Spalten zu verwenden. Achte darauf, dass die Ziel-Tabelle korrekt referenziert wird.

2. Frage
Funktioniert dieser Code in allen Excel-Versionen?
Der Code ist für Excel-Versionen ab 2010 geeignet. Überprüfe die VBA-Einstellungen, wenn du eine ältere Version verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige