Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
304to308
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
304to308
304to308
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Umsätze

Umsätze
03.09.2003 14:20:08
Consti
Ich möchte eine Tabelle erstellen, in der Automatisch eine Spalte ausgefüllt werden soll.
Die Spalte D beinhaltet nur positive Werte (Einnahmen) Spalte E beinhaltet nur negative Werte (Ausgaben). In Spalte F soll der aktuelle Kontostand angezeigt werden. Ich möchte nun, das Excel Automatisch die Spalte F erstellt, wenn die Spalte D und/oder F ausgefüllt ist. Wenn Excel den Wert in F7 eintrage soll, dann soll Excel den Wert aus F6 nehmen, dann E und/oder F addieren und den Wert in F7 eintragen. Die Formel dafür habe ich schon:
[F7]* =F6+(D7+E7) (*Nicht eintippen!!)

Nun soll Excel aber auch für Zeile 8 den Wert errechen. Dann müsste man eigentlich per Hand die Formel so ändern: [F8]*=F7+(D8+E8) (*Nicht eintippen!!)
Wie kann man so etwas automatisieren??

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Umsätze
03.09.2003 14:50:54
WernerB.
Hallo Consti,

der folgende Code gehört in das Modul des entsprechenden Tabellenblattes.

- Rechtsklick auf den Tabellenblatt-Reiter
- Code anzeigen
- das nachstehende Makro von hier auf die große weiße Fläche auf der rechten Seite kopieren
- mit Alt + Q zurück zum "normalen Excel
- Fertig

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim tR As Long
If Target.Row = 1 Then Exit Sub
If Target.Column < 4 Or Target.Column > 5 Then Exit Sub
tR = Target.Row
If Cells(tR, 6).Value = "" Then
Cells(tR, 6).Formula = "=F" & tR - 1 & "+D" & tR & "+E" & tR
End If
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller (siehe dazu Forums-FAQ)!
Anzeige
AW: Umsätze
03.09.2003 15:10:39
Consti
Vielen Dank für die Hilfe!!
Wenn ich mir den VB-Code genauer Anschaue, dann denke ich, das ich das auch hätte selber schaffen können (bin nämlich mit VB angefangen). Aber ich kannte die genauen Excel Befehle/Funktionen nicht geanau!! Vielen Danke noch mal!!

Grüsse Consti!
AW: Umsätze
03.09.2003 15:15:57
Consti
Ich hab das gerade noch einmal ausprobiert. Irgendwie klappts noch nicht ganz. Jetzt wird - so scheints mir - der Kontostandwert einfach für jede Zeile übernommen ohne die Einahmen/Ausgaben mit einzurchenen :((
AW: Umsätze
03.09.2003 15:28:28
WernerB.
Hallo Consti,

das kann ich nicht nachvollziehen; bei mir klappt das einwandfrei.
Sobald in einer Zelle der Spalten D oder E ein Eintrag erfolgt, wird die entsprechende Formel in der selben Zeile in die Spalte F geschrieben (sofern dort nicht schon etwas drinsteht). Bei mir stimmt die Formel; bei Dir etwa nicht?

Hast Du das Makro falsch abgeschrieben?
Kopieren von hier ins Modul mit Strg + C / Strg + V ist sicherer als abschreiben.

Gruß WernerB.
Anzeige
AW: Umsätze
03.09.2003 15:58:54
Consti
Jo, hab das natürlich mit der Zwischenablage gemacht. Ist es wichtig, in welcher Zeile die Tabelle anfängt? Bei mir beginnt nämlich die Eigentlichen Zahlenangeb erst in Zeile 7
in Zeile 5 steht noch der Wert vom August (also das, was z.zt auf meinem Konto ist. Den Wert sollte Excel dann für die 1.Rechnungszeile (bei mir #7) benutzen!
AW: Umsätze
04.09.2003 07:51:28
WernerB.
Hallo Consti,

woher soll ich denn wissen, dass Deine erste Rechnungszeile die Zeile 7 ist und der Vormonatsstand in Zelle F5 steht?
Die Gabe des Hellsehens wurde mir nicht in die Wiege gelegt und bei den ärmlichen Verhältnissen, in denen ich dahin vegetiere, kann ich mir eine Glaskugel auch nicht leisten.
Merke: Wenn ein Programm geschrieben werden soll, muss der Programmierer sowohl

a) die Ausgangsbedingungen als auch
b) die Zielvorstellung

exakt kennen. Erst dann ist er in der Lage, einen funktionierenden Weg (=Programm) von a) nach b) zu realisieren; ansonsten führt der Weg in den Abgrund.

Entschuldige bitte, aber das musste sein!

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim tR As Long
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("D7:E65536")) Is Nothing Then
tR = Target.Row
If Cells(tR, 6).Value = "" Then
If tR > 7 Then
Cells(tR, 6).Formula = "=F" & tR - 1 & "+D" & tR & "+E" & tR
Else
Cells(7, 6).Formula = "=F5+D7+E7"
End If
End If
End If
End Sub

Viel Erfolg wünscht
WernerB.
Anzeige
AW: Umsätze
04.09.2003 11:09:27
Consti
Stimmt, Ich hätte das vielleicht doch etwas genauer beschreiben solln. Trotzdem hats bei mir immer noch nicht geklappt. Ich hab jetzt einfach die Datei hochgeladen, und wenn du mal lust und Zeit hast, kannst du das ja richtig stellen;) Danke!

https://www.herber.de/bbs/user/870.xls
AW: Umsätze
04.09.2003 11:28:09
WernerB.
Hallo Consti,

Deine Testdatei habe ich ausprobiert, bei mir klappt das einwandfrei.
Das Makro steht auch da, wo es stehen soll.

Überschreibe doch mal die "19" mit "19" und die "-5" mit "-5".
Dann wird - zumindest bei mir - jeweils in der selben Zeile in der Spalte "F" die passende Formel eingetragen.

Hast Du vielleicht eine zu hohe Sicherheitsstufe eingestellt, so dass das Makro nicht ausgeführt wird?

Gruß WernerB.
Anzeige
AW: Umsätze
04.09.2003 12:02:12
Consti
Und Pling, wenn man die Makros aktivieren dann klappts wunderbar und es gibt keine Probleme mehr. Danke für die Hilfe...!!!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige