2.7k Aufrufe
Gefragt in Tabellenkalkulation von nero022 Mitglied (179 Punkte)
Hallo, ich möchte gerne folgende Formel in einer schleife automatisch
berechnen lassen und den wert dann in einem Textfeld anzeigen
lassen...!
er soll die schleife so lange durchlaufen bis in zeile G kein wert mehr
steht. danach soll er mir die werte zusammen rechnen und in einem
txtfeld anzeigen.

WENN(G2>0;G2*M2;0)
WENN(G3>0;G3*M3;0)
.
.
.
.

Danke schon ein mal für eure hilfe...!!!!!!

11 Antworten

0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo nero!

Nachfolgendes Makro sollte das machen, was Du Dir vorgestellt hast.

Sub Summe_Spalte_G()
Dim lngRow As Long
Dim dblSumme As Double

For lngRow = 1 To Cells(Rows.Count, 7).End(xlUp).Row
If IsNumeric(Cells(lngRow, 7)) Then
dblSumme = dblSumme + Cells(lngRow, 7)
End If
Next

MsgBox dblSumme
End Sub


Bei Fragen melde Dich.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo ihr beiden,

aus der Frage entnehme ich, dass nicht die Summe der Spalte G, sondern das Summenproukt aus den Spalten G und M berechnet werden soll!?
Wenn das so ist, müsste das Makro so aussehen.
Option Explicit

Sub Summenprodukt_Spalten_G_M()
Dim lngRow As Long
Dim dblSumme As Double

For lngRow = 1 To Cells(Rows.Count, 7).End(xlUp).Row
If IsNumeric(Cells(lngRow, 7)) Then
dblSumme = dblSumme + Cells(lngRow, 7) * Cells(lngRow, 13)
End If
Next

MsgBox dblSumme
End Sub


Das ginge dann aber Sub ohne_Schleife()

Sub ohne_Schleife()
MsgBox WorksheetFunction.SumProduct(Range("G2:G" & Cells(Rows.Count, 7).End(xlUp).Row), Range("M2:M" & Cells(Rows.Count, 7).End(xlUp).Row))
End Sub


Gruß
Rainer
0 Punkte
Beantwortet von nero022 Mitglied (179 Punkte)
Hallo, erst schon mal danke für eure hilfe !!!!

ich habe ein mal eine Test Datei hochgeladen...!!!

in Tabelle 2 erfolgt die Berechnung noch mit einer Formel, da ich keine Formeln in meiner Tabelle haben möchte wollte ich denn wert der in Y14 Steht
im Feld Berechnung stehen haben, aktivieren des CommandButton .....!

er soll die schleife so lange durchlaufen bis in zeile G kein wert mehr
steht. danach soll er mir die werte zusammen rechnen

Ich hoffe das es so besser zu verstehen ist...????
wenn nicht bitte sagen :)



http://www.file-upload.net/download-8977786/Berechnung-Test.xlsm.html
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo,

schau mal rein ob es so richtig ist.

Download

Gruß
Rainer
0 Punkte
Beantwortet von nero022 Mitglied (179 Punkte)
Hallo Reiner, ja das ist schon super.... ist es auch möglich das der wert ohne Doppelclick schon da steht und sich aktualiesiert soblt neue daten
in Tabelle 2 eingetragen werden...???

Gruß nero
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo nero,

ja, das geht auch.

Download

Gruß
Rainer
0 Punkte
Beantwortet von nero022 Mitglied (179 Punkte)
Hallo rainberg, was mache ich wenn ich unter tabelle 1 schon etwas stehen habe...!
z.b.

Option Explicit

Private Sub CommandButton1_Click()
Teileliste.Show
End Sub

dann kann ich dieses doch garnicht mehr machen er zeigt nir dann einen fehler... da ich ja schon 1x CommandButton1 habe...?

Option Explicit

Private Sub CommandButton1_Click()
Berechnung.Show
End Sub
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo nero,

... dann füge eine weiteren CommandButton ein und weise diesem den Code für "Teileliste" zu.

Gruß
Rainer
0 Punkte
Beantwortet von
Hallo Rainer,

Ich habe da noch ein Problem was mir leider jetzt aufgefallen ist...

er berechnet mir die werte nicht richtig wen ich in Tabelle2 G4 ein negativen wert habe...´z.b -1 diesen wert soll er mir nicht berücksichtigen !!!

also er darf nur werte berechnen die Positive sind.. alles größer 0


kannst du mir da noch mal helfen...??!!

Danke !!
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo nero,

hab's geändert.

Download

Gruß
Rainer
...