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

Zelle gleichzeitig als Eingabe und Ausgabefeld

Forumthread: Zelle gleichzeitig als Eingabe und Ausgabefeld

Zelle gleichzeitig als Eingabe und Ausgabefeld
15.08.2003 11:00:25
Mathias
HAllo zusammen,
ich habe zwei Spalten in excel und muss jeweils die nebeneinander liegenden zellen als Eingabe, sowie als Ausgabefeld definieren.
Wird ein Wert in die erste Spalte eingegeben soll das Ergebniss der Berechnung in der Nachbarzelle der 2 Spalte erscheinen und umgekehrt.
Die hinterlegte Berechnung ist jeweils eine Funktion des Nachbarwertes!
Wie kann ich das realisieren?
MFG
MAthias
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle gleichzeitig als Eingabe und Ausgabefeld
15.08.2003 11:12:41
ChrisL
Hi Mathias
Geht nur mit VBA...
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error GoTo ErrorHandler
If Target.Column = 1 Then
Application.EnableEvents = False
If Target = "" Or IsNumeric(Target) = False Then
Cells(Target.Row, 2) = ""
Else
Cells(Target.Row, 2) = Target * 2
End If
End If
If Target.Column = 2 Then
Application.EnableEvents = False
If Target = "" Or IsNumeric(Target) = False Then
Cells(Target.Row, 1) = ""
Else
Cells(Target.Row, 1) = Target * 2
End If
End If
ErrorHandler:
Application.EnableEvents = True
End Sub

Alt + F11, links Doppelklick auf Tabelle, Code einfügen.
Gruss
Chris

Anzeige
;
Anzeige

Infobox / Tutorial

Zelle gleichzeitig als Eingabe und Ausgabefeld in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne dein Excel-Dokument.

  2. Drücke Alt + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  3. Doppelklicke auf die Tabelle, in der du die Eingabe und Ausgabe definieren möchtest (z.B. "Tabelle1").

  4. Füge den folgenden Code ein:

    Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    On Error GoTo ErrorHandler
    If Target.Column = 1 Then
       Application.EnableEvents = False
       If Target = "" Or IsNumeric(Target) = False Then
           Cells(Target.Row, 2) = ""
       Else
           Cells(Target.Row, 2) = Target * 2
       End If
    End If
    If Target.Column = 2 Then
       Application.EnableEvents = False
       If Target = "" Or IsNumeric(Target) = False Then
           Cells(Target.Row, 1) = ""
       Else
           Cells(Target.Row, 1) = Target * 2
       End If
    End If
    ErrorHandler:
    Application.EnableEvents = True
    End Sub
  5. Schließe den VBA-Editor und gehe zurück zu deinem Excel-Dokument.

  6. Gebe einen Wert in die erste Spalte ein und beobachte, wie das Ergebnis automatisch in der zweiten Spalte erscheint. Umgekehrt funktioniert es ebenfalls.


Häufige Fehler und Lösungen

  • Fehler: Der Wert in der Nachbarzelle bleibt leer.

    • Lösung: Stelle sicher, dass der eingegebene Wert in der ersten Spalte eine Zahl ist. Nur numerische Eingaben triggern die Berechnung.
  • Fehler: Der VBA-Code wird nicht ausgeführt.

    • Lösung: Überprüfe, ob Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen und aktiviere die Makros.

Alternative Methoden

Falls du kein VBA verwenden möchtest, kannst du auch Formeln nutzen. Zum Beispiel:

  • In Zelle B1 (neben A1) kannst du die folgende Formel eingeben:
    =WENN(A1=""; ""; A1*2)
  • In Zelle A1 kannst du die Formel:
    =WENN(B1=""; ""; B1/2)

    Diese Methode funktioniert jedoch nicht gegenseitig wie beim VBA-Code und benötigt manuelle Eingaben.


Praktische Beispiele

Stell dir vor, du hast in Spalte A die Eingaben von Produkten und möchtest die Preise in Spalte B berechnen. Wenn du in A1 den Preis von 10 Euro eingibst, wird in B1 automatisch 20 Euro angezeigt. Umgekehrt funktioniert es, wenn du in B1 den Preis 40 Euro eingibst, wird in A1 20 Euro angezeigt.


Tipps für Profis

  • Verwende benannte Bereiche: Um deinen Code übersichtlicher zu gestalten, kannst du benannte Bereiche für deine Zellen verwenden.
  • Fehlerbehandlung verbessern: Ergänze deinen VBA-Code mit spezifischen Fehlermeldungen, um den Nutzern hilfreiche Hinweise zu geben.

FAQ: Häufige Fragen

1. Muss ich Excel VBA aktivieren, um diesen Code nutzen zu können?
Ja, du musst sicherstellen, dass die Makros in Excel aktiviert sind, damit der VBA-Code funktioniert.

2. Kann ich diesen Code auch in Excel Online verwenden?
Leider ist VBA nicht in Excel Online verfügbar. Du kannst diese Technik nur in der Desktop-Version von Excel verwenden.

3. Gibt es Alternativen zu VBA, um Eingaben und Ausgaben dynamisch zu verknüpfen?
Ja, du kannst Formeln verwenden, allerdings benötigen diese manuelle Anpassungen und sind nicht so flexibel wie VBA.

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