Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
488to492
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
488to492
488to492
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

SUMMEWENN über VBA

SUMMEWENN über VBA
20.09.2004 19:35:58
Dieter.K
Hallo Forum,
ich habe ein für mich ernstes Problem mit einer "SUMMEWENN"-Formel die über ein Makro läuft.
Mit folgendem Code versuche ich die Umsätze meiner Kunden zu zählen.

Private Sub ComboBox1_Click()
Cells(Me.ComboBox1.ListIndex + 2, 13).FormulaR1C1 = _
"=SUMIF(Lieferung!R[-1]C[-4]:R[65533]C[-4],RC[-10],Lieferung!R[-1]C[-7]:R[65533]C[-7])"
End Sub

In Excel habe ich damit kein Problem. In VBA raff ich's einfach nicht.
In Excel habe ich feste Bezüge, meine Formel lautet wie folgt:
=SUMMEWENN(Lieferung!$I$2:$I$65536;C2;Lieferung!$F$1:$F$65536)
wobei in "Lieferung!I" meine Kundennamen stehen und in "Lieferung F" die Umsätze. Über "C" wird der Kundenname aus dem aktiven Tabellenblatt (Adressen) ermittelt und in "Lieferung!I" gesucht.
Wie kann ich die Formel in VBA so einsetzen, das mir die Umsätze jedes Kunden aktualiiert werden?
Danke für Eure Hilfe.
Gruß
Dieter.K

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SUMMEWENN über VBA
20.09.2004 21:04:35
Dieter.K
Hallo Forum,
ich habe zwischenzeitlich eine Lösung gefunden.
Die Formel:
=SUMMEWENN(Lieferung!$I$2:$I$65536;C2;Lieferung!$F$1:$F$65536)
setze ich in eine Zelle. Über VBA wird diese dann wie folgt angesprochen:
DER KOMPLETTE CODE FÜR DIESES MAKRO

Private Sub ComboBox1_Click()
TextBox13.Value = Worksheets("Daten").Range("D2")
Dim iCounter As Integer
Dim jCounter As Integer
Dim zCounter As Integer
For iCounter = 1 To 15
Controls("TextBox" & iCounter).Text = _
Worksheets("Adressen").Cells(ComboBox1.ListIndex + 2, iCounter)
TextBox13.Text = Format(TextBox13.Text, "#,##0.00 €")
TextBox14.Text = Format(TextBox14.Text, "#,##0.00 €")
Next iCounter
For jCounter = 16 To 16
Controls("ComboBox2").Text = _
Worksheets("Adressen").Cells(ComboBox1.ListIndex + 2, jCounter)
Next jCounter
For zCounter = 17 To 17
Controls("Label17").Caption = _
Worksheets("Adressen").Cells(ComboBox1.ListIndex + 2, zCounter)
Next zCounter
Call Button1
cmdschließen.SetFocus
End Sub

Somit wird jedem Kunden diese Formel bei der Auswahl über ComboBox1 zugewiesen. Die Zelle C2 wird hierbei immer angepasst (C2, C3, C4 usw.).
Vielleicht hat ja trotzdem jemand eine funktionierende VBA-Lösung. Wäre einfach interressant zu wissen, wie man so etwas in VBA lösen kann.
Gruß
Dieter.K
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige