Office: (Office 2007) SummeWenn in VBA

Helfe beim Thema SummeWenn in VBA in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo und guten Abend, ich habe eine kleine Datei angehängt, ich denke anhand derer wird mein Problem deutlicher. Ich habe eine Matrix von... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von prex99!, 12. Oktober 2016.

  1. prex99! Erfahrener User

    SummeWenn in VBA


    Hallo und guten Abend,

    ich habe eine kleine Datei angehängt, ich denke anhand derer wird mein Problem deutlicher.

    Ich habe eine Matrix von A10:E28.

    In Zelle E32 schreibe ich durch VBA mittels

    ActiveCell.FormulaR1C1 = _
    "=SUMIF(R[-22]C[-4]:R[-4]C[-4],"">=15"",R[-22]C[-0]:R[-4]C[-0])/5"

    den Mittelwert der Zahlen aus Spalte E sofern die zugehörige Zeile in Spalte A einen Wert >= 15 hat. So weit so gut.


    Wie muss ich die VBA Formel ändern, damit die Berechnung nicht für die Werte >= 15 sondern für die 5 größten durchgeführt wird?

    Sollte es also bspw. in Spalte A keine 17 und 19 geben, dann suche ich den Mittelwert für die Werte aus Spalte E für die in der entsprechenden Zeile in Spalte A 18, 16, 15, 14 und 13 steht.

    Vielen Dank für jeden Hinweis!
    Den Anhang 1Demo.xlsx betrachten
     
    prex99!, 12. Oktober 2016
    #1
  2. BoskoBiati Erfahrener User
    Hallo,

    das geht mit einer einfachen Matrixformel:

    Code:
    {=MITTELWERT(KGRÖSSTE(E10:E28;ZEILE(1:5)))}
     
    BoskoBiati, 13. Oktober 2016
    #2
  3. prex99! Erfahrener User
    Hallo,

    danke für den Tip. Diese Formel gibt aber leider den Mittelwert der fünf größten Werte in E10:E28 zurück das ist im Beispiel 3.77%. Ich suche den Mittelwert der fünf Werte aus E10:E28 für die die entsprechenden Werte in A1:A28 die größten sind. Das wäre dann 1.58%.

    Einmal unterstellt eine andere Variante der Matrixformel funktioniert, wie bekomme ich dann eine Matrixformel in einen VBA Code?

    Vielen Dank!
     
    prex99!, 13. Oktober 2016
    #3
  4. BoskoBiati Erfahrener User

    SummeWenn in VBA

    Hallo,

    warum eigentlich VBA?

    Code:
    {=MITTELWERT(WENN(A10:A28>=KGRÖSSTE(A10:A28;5);E10:E28))}
     
    BoskoBiati, 14. Oktober 2016
    #4
  5. prex99! Erfahrener User
    Vielen Dank BoskoBiati! Das hatte ich gesucht.

    VBA weil 1.) die Matrix auch an anderen Orten sein kann und
    2.) mit anderen Werten auch mehrfach auftauchen kann und
    3.) nicht jeden Tag am gleichen Ort in der gleichen Anzahl vorhanden ist.

    Mit VBA kann ich die Formel dann je nach Situation in die richtige Zelle schreiben.

    Falls es von Interesse ist, ich hatte jetzt mit dem Makro-Rekorder etwas probiert und es hat geholfen. Es geht so:

    Selection.FormulaArray = _
    "=AVERAGE(IF(R[-22]C[-4]:R[-4]C[-4]>=LARGE(R[-22]C[-4]:R[-4]C[-4],5),R[-22]C:R[-4]C))"
     
    prex99!, 14. Oktober 2016
    #5
  6. Beverly
    Beverly Erfahrener User
    Hi,

    das geht so viel übersichtlicher:

    Code:
        Selection.FormulaArray = "=AVERAGE(IF(A10:A28>=LARGE(A10:A28,5),E10:E28))"
    
    
    Bis später,
    Karin
     
    Beverly, 15. Oktober 2016
    #6
  7. prex99! Erfahrener User
    Hallo,

    das ist in der Tat deutlich besser. Danke
     
    prex99!, 23. Oktober 2016
    #7
Thema:

SummeWenn in VBA

Die Seite wird geladen...
  1. SummeWenn in VBA - Similar Threads - SummeWenn VBA

  2. VBA Summewenns mit Subtraktion

    in Microsoft Excel Hilfe
    VBA Summewenns mit Subtraktion: Hallo. Ich habe meine Beispiel Tabelle im Anhang. Es soll ein Maschinenbuch sein. In Spalte D und E müssen übereinstimmen. Das Ergebnis soll in G eingetragen werden und die Gesamtmenge schreiben...
  3. Summewenn in VBA mit Schleife

    in Microsoft Excel Hilfe
    Summewenn in VBA mit Schleife: Guten Morgen Zusammen, ich benötige für ein Makro eine Summewenn-Funktion. Weiss nicht genau wie ich vorgehen soll. Hier ist erstmal meine Tabelle: Gebühr_______-3 Einzahlung____15...
  4. Summewenn Formel in VBA

    in Microsoft Excel Hilfe
    Summewenn Formel in VBA: Hallo zusammen, ich habe meine Summewenn Formel zum Laufen bekommen, allerdings gibt sie nur 0 aus. Irgendwie findet sie nicht mein Suchstring "y". Sieht jemand von euch den Fehler? Tabelle:...
  5. Summewenns-Formel als VBA-Code

    in Microsoft Excel Hilfe
    Summewenns-Formel als VBA-Code: Hallo zusammen, ich bin neu im Umgang mit VBA und stehe nun vor einem – für mich sehr großen - Problem.*frown.gif* *eek.gif* Ich möchte die Formel „Summewenns“ in Verbindung mit der Wenn-Formel...
  6. Summewenn - VBA

    in Microsoft Excel Hilfe
    Summewenn - VBA: Hallo zusammen, ich möchte gerne eine Summewenn-Funktion mittels VBA darstellen. Im Anhang sind zwei Tabellenblätter für ein besseres Verständnis abgelegt. Und zwar sind auf Tabelle 1...
  7. Makro (VBA) um Wert evtl mit Hilfe von SUMMEWENNS in eine andere Tabelle schreiben

    in Microsoft Excel Hilfe
    Makro (VBA) um Wert evtl mit Hilfe von SUMMEWENNS in eine andere Tabelle schreiben: Hallo zusammen, vielleicht hat einer von euch eine Idee, um mir bei meiner Herausforderung zu helfen. Ich habe eine Tabelle1: [ATTACH] Die Werte zu den Personen würde ich gerne über...
  8. vba excel summe mit bedingungen

    in Microsoft Excel Hilfe
    vba excel summe mit bedingungen: Hallo, ich arbeite mit Office 2007. In Excel habe ich mit vba ein Makro geschrieben, dass gut läuft. Aber jetzt benötige ich eine sumifs Formulierung und scheitere. Mit nachfolgender Schleife...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden