Collapse column

Autor Thema: Office 2016 WennFormel kombiniert mit unterschiedlichen Zeiträumen / Gebührenrechner  (Gelesen 2106 mal)

Offline Blomli

  • Newbie
  • *
  • Beiträge: 5
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2016
Hallo Genie da draußen

Ich möchte gerne eine Formel, die mir automatisch die entsprechende Gebühr per =heute() berechnet.

Folgende Bedingungen sollen erfüllt sein:

1) Falls das heutige Datum in die erste Range des Quartals fällt, soll keine Gebühr berechnet werden. Beispiel: Gebühr gem. Zeile XY *0
2) Falls das heutige Datum in die zweite Range des Quartals fällt, soll die Gebühr aus der XY-Zeile 1/3 betragen. Beispiel: Gebühr gem. Zeile XY * (1/3)
3) Falls das heutige Datum in die dritte Range des Quartals fällt, soll die Gebühr aus der XY-Zeile 2/3 betragen. Beispiel: Gebühr gem. Zeile XY * (2/3)
4) Falls das heutige Datum in die 4 Range des Quartals fällt, soll die Gebühr aus der XY-Zeile 3/3 betragen. Beispiel: Gebühr gem. Zeile XY * (1)

Gebühr = 3%

Quartal 1
1) >= 01.01.2016 bis und mit 15.01.2016,
2) > 15.01.2016 bis und mit 16.02.2016,
3) > 16.02.2016 bis und mit 16.03.2016,
4) > 16.03.2016 bis und mit 31.03.2016,

Quartal 2
1) >= 01.04.2016 bis und mit 15.04.2016,
2) > 15.04.2016 bis und mit 16.05.2016,
3) > 16.05.2016 bis und mit 16.06.2016,
4) > 16.06.2016 bis und mit 30.06.2016,

Quartal 3
1) >= 01.07.2016 bis und mit 15.07.2016,
2) > 15.07.2016 bis und mit 16.08.2016,
3) > 16.08.2016 bis und mit 16.09.2016,
4) > 16.09.2016 bis und mit 30.09.2016,

Quartal 4
1) >= 01.10.2016 bis und mit 15.10.2016,
2) > 15.10.2016 bis und mit 16.11.2016,
3) > 16.11.2016 bis und mit 16.12.2016,
4) > 16.12.2016 bis und mit 31.12.2016,

Wie kann ich dieses Problem mit einer Formel lösen?

Danke bereits im Voraus!

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline lupo1

  • Sr. Member
  • ****
  • Beiträge: 250
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2010
=((TAG(HEUTE())>INDEX({15.16.16};REST(MONAT(HEUTE())-1;3)+1))+REST(MONAT(HEUTE())-1;3))% * DeinWert

kannst Du testen mit beliebigen Datümern in A1 mit
=((TAG(A1)>INDEX({15.16.16};REST(MONAT(A1)-1;3)+1))+REST(MONAT(A1)-1;3))%
« Letzte Änderung: Dezember 28, 2016, 22:49:48 Nachmittag von lupo1 »
MfG Lupo1 (und natürlich gern auch Hallo!)

Offline Blomli

  • Newbie
  • *
  • Beiträge: 5
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2016
Vielen Dank für diese Antwort, jedoch funktioniert diese bei mir nicht.

Wärst Du so lieb und würdest einmal einen PrintScreen Deines Excels hineinstellen?

Ich habe das Gefühl, die Formel berücksichtigt nicht alles, was ich gerne möchte, ohne Dich damit kränken zu wollen. Oder ich bin einfach zu dof oder habe mich zu unklar ausgedrückt. ;)

Wenn das Datum, dass ich unter A1 eingebe, zwischen all diesen folgenden Daten liegt
>= 01.01.2016 bis und mit 15.01.2016,
>= 01.04.2016 bis und mit 15.04.2016,
>= 01.07.2016 bis und mit 15.07.2016,
>= 01.10.2016 bis und mit 15.10.2016,
so soll es mir die Zahl in A2 mit 0 multiplizieren.

Wenn das Datum, dass ich unter A1 eingebe jedoch zwischen all diesen Daten liegt
> 15.01.2016 bis und mit 16.02.2016,
> 15.04.2016 bis und mit 16.05.2016,
> 15.07.2016 bis und mit 16.08.2016,
> 15.10.2016 bis und mit 16.11.2016,
so soll es mir die Zahl in A2 mit (1/3) multiplizieren.

Wenn Datum zwischen all diesen
> 16.02.2016 bis und mit 16.03.2016,
> 16.05.2016 bis und mit 16.06.2016,
> 16.08.2016 bis und mit 16.09.2016,
> 16.11.2016 bis und mit 16.12.2016,
so *(2/3).

und wenn Datum zwischen..
> 16.03.2016 bis und mit 31.03.2016,
> 16.06.2016 bis und mit 30.06.2016,
> 16.09.2016 bis und mit 30.09.2016,
> 16.12.2016 bis und mit 31.12.2016,
so *1

Hoffe es funktioniert.... Danke bereits 1000 Mal!!!

Offline lupo1

  • Sr. Member
  • ****
  • Beiträge: 250
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2010
Ich hoffe, dass Du meine zweite Formel selbst in A4 kopieren kannst.

Sie ergibt 0%, 1%, 2% oder 3%, da Du Gebühr gleich 3% geschrieben hattest. Ist das nicht der Fall, weil Du 0-3 Drittel möchtest und den Wert in A2 selbst multiplizieren möchtest (den nannte ich übrigens DeinWert), sieht die Formel wie folgt aus:

A1: Datum
A2: Wert oder Gebühr (aber jetzt als Zahl, nicht als zu interpretierende Prozentzahl)
A4: =((TAG(A1)>INDEX({15.16.16};REST(MONAT(A1)-1;3)+1))+REST(MONAT(A1)-1;3))/3*A2

Probiere es noch mal. - Sind Wert und Gebühr zu trennen, dann änderst Du auf
A1: Datum
A2: Wert
A3:  Gebühr (aber jetzt als Zahl, nicht als zu interpretierende Prozentzahl)
A4: =((TAG(A1)>INDEX({15.16.16};REST(MONAT(A1)-1;3)+1))+REST(MONAT(A1)-1;3))/3*A2*A3

MfG Lupo1 (und natürlich gern auch Hallo!)

Offline Blomli

  • Newbie
  • *
  • Beiträge: 5
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2016
Herzlichen Dank für die Antwort jedoch klapt es immer noch nicht...

Mein Excel kapiert die geschwungene Klammer in der Formel nicht. Woran liegt das?
Er ändert {15.16.16} immer zu {15.1616} und gibt anschliessend eine Fehlermeldung
#Bezug

Ich dreh durch ...

Muss ich die Datümer irgendwie speziell in die Zellen eingeben mit >,<,= oder sonst was?

Ich bin zuversichtlich, dass wir es bis ende Jahr hinkriegen =)

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline DL

  • Hero Member
  • *****
  • Beiträge: 808
  • {Irrtum / Versuch * Glaskugel}
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2016
Hallo

Es sieht so aus als ob du abweichende Zeilen-/Spaltentrenner hast. In der Regel ist das abhängig von den Windows-Regionaleinstellungen.
Du kannst mal probieren ob , (Komma) oder ; (Semikolon) funktionieren.
Wir sehen uns!
... Detlef
Eine Mustertabelle hilft beim Helfen.
Excel Super-Funktionen: VERWEIS(), INDEX(), WAHL()

Offline lupo1

  • Sr. Member
  • ****
  • Beiträge: 250
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2010
Vermutlich Schweiz. Da gilt möglicherweise {15/16/16} oder {15\16\16} oder so. Zu faul zum Suchen jetzt.

Lass ma laufn:

Sub Makro2()
[a4] = "=((DAY(R[-3]C)>INDEX({15,16,16},MOD(MONTH(R[-3]C)-1,3)+1))+MOD(MONTH(R[-3]C)-1,3))/3*R[-2]C*R[-1]C"
End Sub

... und erzähl, was dann bei Dir ankommt. Irgendwie fühle ich mich gerade bestätigt, Antworten nur noch als VBA-Code zu geben. ;) Aber so viele Schweizer (und andere Nichtdeutsche) gibt es hier dann doch nicht ;)
« Letzte Änderung: Dezember 30, 2016, 18:30:32 Nachmittag von lupo1 »
MfG Lupo1 (und natürlich gern auch Hallo!)

Offline Blomli

  • Newbie
  • *
  • Beiträge: 5
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2016
Es funktioniert! Top Arbeit lupo1.

Wen ich Dich noch ein letztes Mal stören darf, würde ich gerne von Dir wissen, wie die Formel zu interpretieren ist, damit ich den Algo auch verstehe.

Vielen Dank, einen guten Rutsch und alles Gute fürs neue Jahr!

Offline lupo1

  • Sr. Member
  • ****
  • Beiträge: 250
    • Profil anzeigen
  • Office-KnowHow: Anfänger
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2010
Klar, mach ich.

Du behandelst jedes Quartal gleich. Also kann ich mit REST(...;3) schon mal sozusagen die Monate nur eines Quartals statt sonst jedes einzelnen betrachten.

Im INDEX nehme ich mir nun keinen Bereich vor, sondern versorge ihn einfach mit Deinen 3 Trenn-Datumstagen {15.16.16}. Ich hätte dafür übrigens auch WAHL(...;15;16;16) verwenden können.

Ergibt REST+1 das Ergebnis 1, gilt der erste dieser 3 Trenntage. Ist der TAG nun größer als der Trenntag, gilt WAHR, sonst FALSCH.

Das Addieren aus diesen beiden Möglichkeiten {0.1} zu den drei REST(...;3)-Ergebnissen {0.1.2} ergibt nun insgesamt 4 Ergebnismöglichkeiten {0.1.2.3} , denn beim Rechnen wird WAHR = 1 und FALSCH = 0.

Das war es schon.
« Letzte Änderung: Dezember 31, 2016, 15:56:40 Nachmittag von lupo1 »
MfG Lupo1 (und natürlich gern auch Hallo!)

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline Blomli

  • Newbie
  • *
  • Beiträge: 5
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Wenig
  • Version [Office] : Office 2016
Vielen lieben Dank für diese Antwort.

Wirklich top!

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.