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

Forumthread: Wert in aktive Zelle kopieren

Wert in aktive Zelle kopieren
27.04.2016 18:47:03
Susanne
Hallo Zusammen,
ich bin zwar nicht ganz unbewandert in VBA Programmierung nun aber doch etwas am verzweifeln. Eine eigentlich einfache Funktion raubt mir den letzten Nerv :(
Die Aufgabe: Bei Aenderung der aktive Zelle (der Benutzer traegt in diese Zelle ein "x" ein), soll ein Makro automatisch einen Wert einer bestimmten Zelle (= Aktive Spalte, Zeile 6) kopieren und als Wert in die aktive Zelle schreiben.
Der User bestaetigt die Eingabe von "x" unter Umstaenden mit Enter, so dass auch verhindert werden muss, dass dann die naechste Zelle die aktive Zelle wird.
Bin fuer Anregungen jeder Art dankbar.

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wert in aktive Zelle kopieren
27.04.2016 19:06:26
Nepumuk
Hallo,
in das Modul der Tabelle:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count = 1 Then
        If Target.Value = "x" Then
            Application.EnableEvents = False
            Call Cells(6, Target.Column).Copy(Destination:=Target)
            Application.EnableEvents = True
        End If
    End If
End Sub

Gruß
Nepumuk

Anzeige
AW: Wert in aktive Zelle kopieren
28.04.2016 07:30:49
Susanne
Super. Funktioniert einwandfrei. Vielen Dank fuer die schnelle Hilfe!
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Wert in aktive Zelle kopieren


Schritt-für-Schritt-Anleitung

Um einen Wert in die aktive Zelle zu kopieren, wenn der Benutzer "x" eingibt, kannst Du folgenden VBA-Code verwenden. Dieser Code wird in das Modul der entsprechenden Tabelle eingefügt.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Suche im Projekt-Explorer nach der gewünschten Tabelle (z.B. "Tabelle1").
  3. Doppelklicke auf die Tabelle, um das Code-Fenster zu öffnen.
  4. Füge den folgenden Code ein:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count = 1 Then
        If Target.Value = "x" Then
            Application.EnableEvents = False
            Call Cells(6, Target.Column).Copy(Destination:=Target)
            Application.EnableEvents = True
        End If
    End If
End Sub
  1. Schließe den VBA-Editor und teste die Funktion, indem Du in eine Zelle "x" eingibst.

Häufige Fehler und Lösungen

  • Fehler: Der Wert wird nicht in die aktive Zelle kopiert.

    • Lösung: Überprüfe, ob der Code im richtigen Tabellenmodul eingefügt wurde. Der Code muss in das spezifische Arbeitsblatt eingefügt werden, nicht in ein allgemeines Modul.
  • Fehler: Es passiert nichts, wenn "x" eingegeben wird.

    • Lösung: Stelle sicher, dass die Excel-Ereignisse aktiviert sind. Manchmal kann ein anderer Makro den Application.EnableEvents auf False setzen.

Alternative Methoden

Falls Du keine VBA-Programmierung nutzen möchtest, kannst Du auch die Funktion SVERWEIS oder INDEX in Kombination mit WENN verwenden, um ähnliche Ergebnisse zu erzielen. Diese Methoden sind jedoch weniger dynamisch und benötigen mehr manuelle Eingaben.


Praktische Beispiele

  • Beispiel 1: Wenn Du in Zelle A1 "x" eingibst, wird der Wert in Zelle A6 automatisch in A1 kopiert.
  • Beispiel 2: Wenn Du den Code in eine andere Tabelle einfügst, wird der Wert aus Zeile 6 der aktiven Spalte in die Zelle eingefügt, die Du bearbeitest.

Tipps für Profis

  • Nutze Application.Undo, um die Eingabe zurückzusetzen, falls der Benutzer einen Fehler gemacht hat.
  • Du kannst den Code erweitern, um zusätzliche Bedingungen zu prüfen, z.B. unterschiedliche Werte für verschiedene Eingaben.

FAQ: Häufige Fragen

1. Frage
Kann ich den Bereich anpassen, in dem der Code funktioniert?
Antwort: Ja, Du kannst die Bedingungen im If-Block anpassen, um spezifische Zellen oder Bereiche zu definieren.

2. Frage
Funktioniert dieser Code in Excel 365?
Antwort: Ja, der Code funktioniert in Excel 365 sowie in den meisten anderen Versionen, die VBA unterstützen.

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