Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
620to624
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
620to624
620to624
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zellwerterhöhung mit Bedingung

Zellwerterhöhung mit Bedingung
Norb
Hallo Leute!
Ich habe eine Frage: Ich habe diesen Code hier gefunden und es ist beinahe genau das, was ich gesucht habe.
Private

Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then Range("B1") = Range("B1") + Target.Value
End Sub

Aber ich würde gerne eine kleine Veränderung vornehmen: Ich möchte, dass zB in der Zelle C1 der Tag ausgelesen wird und dadurch wird die Zelle, in der der Wert summiert wird, beeinflusst.
Soll heißen:
Ich trage in Zelle A1 einen Wert ein
Es wird geprüft welcher Tag in Zelle C1 eingetragen ist
Wenn "Montag" in Zelle C1 steht, wird der Wert zu B1 addiert
Wenn "Dienstag" in Zelle C1 steht, wird der Wert zu B2 addiert
usw...
Kann mir jemand helfen? Ich wäre euch sehr zu Dank verbunden. Danke im Vorraus.
Norb

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zellwerterhöhung mit Bedingung
05.06.2005 16:24:06
ransi
hallo norbert
versuchs mal so:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$1" Then Exit Sub
[b1] = [b1] - ([a1] * ([c1].Text = "Montag"))
[b2] = [b2] - ([a1] * ([c1].Text = "Dienstag"))
End Sub

ransi
AW: Zellwerterhöhung mit Bedingung
05.06.2005 16:37:53
Norb
Hallo Ransi,
1000 Dank für das alles und das auch noch so schnell.
Gibt es eigentlich ein wirkliches Anfänger-Buch für VBA oder sonst etwas? Alles funktioniert aber um ehrlich zu sein, habe ich keinen Plan, was das jetzt genau bedeutet... ;)
Ich würde das alles sehr gerne lernen bzw. vor allem verstehen. Sozusagen um euch Arbeit zu ersparen. ;)
Auf jeden Fall noch einmal ein dickes Danke.
Norb
Anzeige
versuch einer Erklärung..
05.06.2005 17:10:33
ransi
hallo norbert
freut mich das du den code nicht einfach kommentarlos ohne rückfrage übernimmst.
ich versuch mal eine erläuterung:
If Target.Address "$A$1" Then Exit Sub
sollte nachzuvollziehen sein.
[b1] = [b1] - ([a1] * ([c1].Text = "Montag"))
ist schon schwieriger:
([c1].Text = "Montag") ist ein wahrheitswert der excelintern in eine zahl
umgerechnet wird.
für wahr -1
für falsch 0
wenn c1 = montag hiesse das für die formel:
b1=b1-(a1*(-1))
=
b1=b1-(-a1)
=
b1=b1+a1
wenn c1 = dienstag hiesse das für die formel:
b1=b1-(a1*0)
=
b1=b1-(0)
=
b1=b1
für die zelle b2 entsprechend
In sachen Literatur kann ich dir nicht weiterhelfen.
Bin Autodidakt.
Versuch im Forum die Probleme die hier geschildert werden zu verstehen und Lösungen zu erarbeiten.
Wenn andere Lösungsvoschläge eingehen versuche diese nachzuvollziehen.
Die Zaubertaste (F1) hat auch eine ziemlich hohe trefferquote.
(wenn man weiss wonach man suchen soll)
Hoffe ich konnte helfen.
ransi
Anzeige
Noch eine Frage
06.06.2005 21:20:32
Norb
Ich hoffe, das hier wird noch gelesen,
Ich habe jetzt noch eine Frage. Ich versuche nun diese Formel in Tabelle1 einzusetzen und es funktioniert alles (Danke nochmal!)
Ich möchte nun in eine andere Zelle zB A2 Daten eintragen und in sollen diese summiert werden zb in B14 eingefügt wenn C1 Montag ergibt und in B15 wenn C1 Dienstag ergibt. Alles in allem das Gleiche wie schon angegeben aber alles bis auf C1 ändert sich.
Ich habe einfach versucht das ganze zu kopieren und die Werte zu ändern. Aber egal wie ich es drehe und wende bzw. Versuche ein Ergebnis zusammenzubasteln, es will nicht funktionieren. Liegt es an dem "If Target.Address "$A$1" Then Exit Sub"? Soll heißen dass alle Werte bis auf A1 (warum eigentlich die Dollarzeichen für einen fixen Bezug. Ich habe es ohne versucht und es funktioniert nicht aber warum?) einfach komplett ignoriert werden wegen "then exit sub".
Ich versuche mir irgendwie etwas logisches zusammenzubasteln aber wirklich entwickeln tut sich das nicht. Ich hatte bis zu diesem Beispiel hier gar nichts mit VB zu tun.
Ich hoffe, man hilft mir nochmal. Danke im Vorraus.
Norb
Anzeige

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige