Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1544to1548
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
Inhaltsverzeichnis

Jede 3. Spalte ein Wert eintragen

Jede 3. Spalte ein Wert eintragen
15.03.2017 21:03:20
harald
Hallo Forum,
ich bräuchte eure Hilfe mit einer Verformelung.
Folgendes Problem liegt vor:
Ich hab eine monatliche Zeitreihe (Jan 2017, Feb 2017 usw.). Unter dieser Zeitreihe möchte ich einer Zeile ein Intervall anzeigen lassen:
Z.B. Intervall = 3, mit Start Jan 2017 sollte dann so aussehen:
Zeile 1: Jan 2017, Feb 2017, März 2017, April 2017, Mai 2017, Juni 2017, Juli 2017...
Zeile 2: 1, 0, 0, 1, 0, 0, 1 usw.
Das Intervall sollte beim Startdatum mit einer 1 anfangen und von dort an in der dritten folgenden Spalte wieder eine 1 setzen.
Ich bekomme es mit einem variablen Startdatum einfach nicht hin :/
Wäre super wenn ihr mir helfen könntet.
Vielen Dank und schöne Grüße
Harald

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Folgender Code baut Dir so etwas zusammen:
16.03.2017 03:00:31
lupo1

Sub PeriodischeAufgeteilteZahlungen()
Workbooks.Add xlWorksheet
[F2].Select: ActiveWindow.FreezePanes = True
Cells.ColumnWidth = 5.5
Columns("A:C").ColumnWidth = 10
Range("A1:E1") = Array("von", "bis", "€ p.a.", "n pa", "Shft")
Range("A2:E2") = Array(42736, 44197, 4, 4, 0)
Rows("1:1").NumberFormat = "mmmyy"
Rows("2:2").NumberFormat = "0.00;;"
Range("A:B").NumberFormat = "dd.mm.yyyy"
Range("F1") = "1/1/2017"
Range("G1:BB1").FormulaR1C1 = "=RC[-1]+32-DAY(RC[-1]+31)"
Range("F2:BA2").FormulaR1C1 = "=MAX(,MIN(INDEX(R1C[1]:R1C[12],12/RC4),RC2)-MAX(R1C," & _
"RC1))/(INDEX(R1C[1]:R1C[12],12/RC4)-R1C)*(MOD(MONTH(R1C)-1-RC5,12/RC4)=0)/RC4*RC3"
End Sub

Nun kannst Du D2 in 12 oder 6 oder 3 oder 2 oder 1 ändern und sehen, was passiert!
Anzeige
AW: Folgender Code baut Dir so etwas zusammen:
16.03.2017 05:25:42
Rainer
Hallo Harald,
ohne VBA:

=WENN(REST(SPALTE(A1)+$C$2-1;$C$2)>0;0;1)
in $C$2 steht das Interval.
Das ist auch unabhängig von der Zeile mit dem Datum, der Zusammenhang "Ich bekomme es mit einem variablen Startdatum einfach nicht hin" erschließt sich mir nicht. Oder meinst du, die Formel muss den Januar 2017 selber finden?
Gruß,
Rainer
AW: Folgender Code baut Dir so etwas zusammen:
16.03.2017 08:58:43
harald
Hallo Rainer & Lupo1,
erst einmal vielen herzlichen Dank für Eure Hilfe. Lieber Lupo1, danke für den VBA Code. Leider kann ich VBA nicht und das Excel Modell wird auch von meinen Kollegen benutzt.
Lieber Rainer, danke für die clevere Lösung, das ist wahrscheinlich schon die halbe Miete. Allerdings hast du Recht, die Formel sollte den Januar 2017 selbst finden.
D.h. VOR dem Januar 2017 (also 2016 und früher) sollte einfach eine 0 stehen, ab dem Januar 2017 dann die Prüfung mit dem Intervall.
Hättest du dafür auch noch eine Lösung?
Vielen Dank für eure Hilfe und schöne Grüße
Anzeige
AW: Folgender Code baut Dir so etwas zusammen:
16.03.2017 09:25:42
Rainer
Hallo Harald,
dann also mit Zweifach-WENN()

=WENN(REST(SPALTE(A1)+$C$2-VERGLEICH($C$1;4:4;0);$C$2)>0;0;WENN(A4
In $C$1 steht der Startmonat.
Die Zeile mit den Monatsnamen ist hier Zeile 4. Das musst du anpassen in der VERGLEICH() Formel.
Gruß,
Rainer
AW: Folgender Code baut Dir so etwas zusammen:
16.03.2017 20:43:12
harald
Hallo Rainer,
deine Lösung funktioniert sehr gut. Ich wäre nicht darauf gekommen.
Vielen lieben Dank dafür!
AW: Folgender Code baut Dir so etwas zusammen:
17.03.2017 02:22:35
Rainer
Viel Spaß damit und Danke für die Rückmeldung.

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige