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

Forumthread: Wert aus Zelle in anderer Zelle Schreiben

Wert aus Zelle in anderer Zelle Schreiben
10.08.2015 13:39:42
Beat
Hallo
Ich verwende folgenden code um den Wert der Zelle aus G8 in G9 zu schreiben.
Private Sub SelectionChange()
Cells(9, 7).Formula = Cells(8, 7).Value
End Sub
Das funktioniert auch wenn der Wert grösser null ist. beziehungsweise wenn sich der Wert von Null auf 2 ändert. ändert er sich jedoch von 2 auf Null. dann wird der Wert nicht aktualisiert.
was fehlt in meinem code?
in G8 steht follgende Formel:
=WENN(SUMME(G4:G7)>1;"2";"")
Herzliche Grüsse
Beat

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Wert aus Zelle in anderer Zelle Schreiben
10.08.2015 13:49:57
Bernd
Hi,
kurze Verständnisfrage, warum schreibst Du nicht einfach in die Zelle G9 die Formel =G8 ?
mfg Bernd

AW: Wert aus Zelle in anderer Zelle Schreiben
10.08.2015 14:16:10
Beat
hallo bernd
da ich wider mit vba ein Button ausblenden möchte sobald der wert in diese Zelle 2 ist, diese anscheinend aber nur geht wenn die Zelle auf welche man sich bezieht keine Formel enthält.
gruss beat

Anzeige
AW: Wert aus Zelle in anderer Zelle Schreiben
10.08.2015 14:08:28
Bernd
Naja, nichts desto trotz, probier mal so:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("G8")) Is Nothing Then Exit Sub
ActiveSheet.Range("G9") = ActiveCell
Application.CutCopyMode = False
End Sub
PS.: habs auch nur im Netz gefunden und kurz getestet!
mfg Bernd

Anzeige
Was soll das sein, ...
10.08.2015 14:13:45
Luc:-?
…Beat?
Wie Bernd schon richtig anmerkte, ist 1. eine solche Operation doch sehr verwunderlich, wenn stets der Wert von G8 in G9 übernommen wdn soll, worauf dein Kontext schließen lässt.
Außerdem erhebt sich 2. die Frage, ob das eine Ereignisprozedur wdn sollte, was ebenfalls anhand deines Kontextes vermutet wdn darf. So, wie sie dasteht, ist es nämlich keine! Sieht eher wie ohne eigentliches Verständnis aus einer adaptiert aus.
Und 3. erzeugt deine Fml niemals echte Zahlen, sondern stets einen Text → entweder das Textzeichen 2 oder einen Leertext.
Schließlich noch 4.; hat sich der Wert der Zelle G9 1× per Prozedur­Aufruf geändert, kann er sich so nur noch ändern, wenn sich G8 ändert und die Prozedur erneut aufgerufen wird, wobei 5. die Fml in G4:G7 niemals 0 ergeben kann und "2" und "" stets >1 sind.
Gruß, Luc :-?
Besser informiert mit …

Anzeige
Korr: Fml in G8 war gemeint (nicht G4:G7)! owT
10.08.2015 14:19:02
Luc:-?
:-?

AW: Korr: Fml in G8 war gemeint (nicht G4:G7)! owT
10.08.2015 14:51:57
Beat
Hallo Luc,
ich verstehe schon, ich bin eventuell auch völlig falsch an das Thema rann gegangen.
also etwas ausführlicher:
In meinem Dokument kann man mit Kontrollkästchen weitere Tabellen Blätter einblenden. für jede Sprache ein Kontrollkästchen bzw. Tabellenblatt.
Auf dem Rechnungs Blatt hat es verschiedene Buttons welche entsprechend der gewählten Kontrollkästchen ein und ausgeblendet werden sollen.
ich dachte wenn ein kontrollkästchen aktiviert wird schreibt dieses eine 1 in eine zelle, sobalt eben mehr als eines aktiviert ist also die Somme grösser eins ist so wird entsprechend ein Button ausgeblenden bzw ein anderer eingeblendet.
ich hoffe, das erkärt etwas mein vorgehen.
gruss
beat
Anzeige
;

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 aus Zelle in anderer Zelle schreiben


Schritt-für-Schritt-Anleitung

Um einen Excel Wert in eine andere Zelle zu schreiben, kannst Du verschiedene Methoden verwenden, sowohl mit Formeln als auch mit VBA. Hier ist eine einfache Anleitung für beide Möglichkeiten:

Methode 1: Mit einer Formel

  1. Gehe zu der Zelle, in die du den Wert übertragen möchtest (z.B. G9).
  2. Schreibe die Formel =G8 in die Zelle G9. Dies überträgt den Wert aus G8 in G9.

Methode 2: Mit VBA

  1. Öffne den VBA-Editor mit ALT + F11.

  2. Füge den folgenden Code in das entsprechende Arbeitsblatt ein:

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
       If Intersect(Target, Range("G8")) Is Nothing Then Exit Sub
       ActiveSheet.Range("G9") = ActiveCell.Value
    End Sub
  3. Schließe den VBA-Editor und teste die Funktion, indem du die Zelle G8 änderst.


Häufige Fehler und Lösungen

  • Problem: Der Wert in G9 wird nicht aktualisiert, wenn G8 auf Null ändert.

    • Lösung: Verwende die Worksheet_Change-Ereignisprozedur, um sicherzustellen, dass die Zelle G9 immer aktualisiert wird, wenn sich der Wert in G8 ändert:
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, Range("G8")) Is Nothing Then
           Range("G9").Value = Range("G8").Value
       End If
    End Sub
  • Problem: Die Formel in G8 gibt einen Text zurück, der nicht in G9 übernommen wird.

    • Lösung: Stelle sicher, dass die Formel in G8 einen numerischen Wert zurückgibt, wenn du mit mathematischen Operationen arbeiten möchtest.

Alternative Methoden

Wenn du den Wert aus einer Zelle ohne VBA in eine andere Zelle schreiben möchtest, kannst du die WENN-DANN-Funktion verwenden:

=WENN(G8>0;G8;"")

Diese Formel schreibt den Wert von G8 in die Zelle, wenn G8 größer als Null ist. Andernfalls bleibt die Zelle leer.


Praktische Beispiele

  1. Verwendung der WENN-Funktion:

    • Wenn du in Zelle G8 eine Berechnung hast, die den Wert 2 ergibt, kannst du die folgende Formel in G9 verwenden:
      =WENN(G8=2;"Zwei";"Nicht Zwei")

      Dies gibt "Zwei" in G9 aus, wenn G8 gleich 2 ist.

  2. VBA für komplexe Bedingungen:

    • Wenn du mehrere Bedingungen überprüfen möchtest, kannst du VBA verwenden:
      Private Sub Worksheet_Change(ByVal Target As Range)
      If Target.Address = "$G$8" Then
         If Range("G8").Value > 1 Then
             Range("G9").Value = "Mehr als eins"
         Else
             Range("G9").Value = "Weniger oder gleich eins"
         End If
      End If
      End Sub

Tipps für Profis

  • Nutze die Excel-Formel =WENN(G8>1;G8;0) um Werte direkt in G9 zu schreiben, ohne VBA.
  • Verwende benannte Bereiche für eine bessere Lesbarkeit in deinen Formeln.
  • Teste deine VBA-Codes immer in einer Kopie deiner Datei, um Fehler zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich einen Wert aus einer Zelle in Excel schreiben, ohne VBA zu verwenden? Du kannst einfach eine Formel wie =A1 in die Zielzelle eingeben, um den Wert zu übernehmen.

2. Was mache ich, wenn der Wert in der Quellzelle eine Formel ist? In diesem Fall kannst du die Funktion WERT() verwenden, um sicherzustellen, dass der Rückgabewert als numerisch interpretiert wird, z.B. =WERT(G8).

3. Wie kann ich VBA verwenden, um den Wert einer Zelle zu ändern? Du kannst den Wert einer Zelle in VBA so ändern:

Range("B1").Value = Range("A1").Value

4. Was ist der Unterschied zwischen einer Formel und einem VBA-Skript? Formeln sind dynamisch und aktualisieren sich automatisch, während VBA-Skripte manuell oder durch Ereignisse ausgelöst werden müssen.

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