Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1756to1760
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

VBA nächste durch 13 teilbare Zahl

VBA nächste durch 13 teilbare Zahl
04.05.2020 16:26:26
W
Hallo Forum.
ich stehe gerade wieder einmal auf dem Schlauch. Von einer Ausgangszahl benötige ich die ggf.nächsthöhere Zahl, welche sich durch 13 ohne Rest teilen läßt.
Bei 12 sollte auf 13 aufgerundet werden
bei 13 sollte 13 bleiben
und bei 14 sollte 26 ermittelt werden.
Mit der Function MOD habe ich auch keine Lösung erarbeiten können.
Wie löse ich das Problem mit VBA? Wer kann mir weiterhelfen?.
Gruß
W H21

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

Betreff
Datum
Anwender
Anzeige
AW: VBA nächste durch 13 teilbare Zahl
04.05.2020 16:56:13
Robert
Hallo,
anbei eine Excel-Datei mit einer VBA-Lösung (Funktion) und auch einer Berechnung mit Hilfe der Excel-Formeln!
Ich hoffe, ich konnte Ihnen damit weiterhelfen!
Freundliche Grüße
Robert
https:\/\/www.herber.de/bbs/user/137253.xlsm
AW: VBA nächste durch 13 teilbare Zahl
04.05.2020 17:14:03
W
Hallo Robert,
vielen Dank für das Beispiel. Natürlich habe ich den Code probiert und festgestellt, dass er genau das Ergebnis liefert, welches ich erwartet habe. Allerdings habe ich mich für den Vorschlag von Ralf entschieden, weil ich dort ohne zusätzliche (eigene) Funktion zum Ergebnis komme.
Gruß
W H21
Anzeige
WorksheetFunction.RoundUp(Zahl / 13, 0) * 13
04.05.2020 16:56:20
RPP63
siehe Betreff
Gruß Ralf
AW: WorksheetFunction.RoundUp(Zahl / 13, 0) * 13
04.05.2020 17:06:36
W
Hallo Ralf,
vieln Dank. Diese Formel löst mein Problem.
Gruß
W H21
AW: VBA nächste durch 13 teilbare Zahl
04.05.2020 17:32:10
Daniel
Hi
Excel: =Obergrenze(A1;13)
VBA: =Worksheetfunction.Ceiling(x, 13)
Die MOD - Lösung in VBA könnte so aussehen:
Y = X - (13 - (X Mod 13)) * ((X Mod 13)  0)
Das erste "-" muss sein, weil True in Berechnungen in VBA als -1 gewertet wird
Oder so:
Y = X + IIf((X Mod 13) = 0, 0, 13 - (X Mod 13))
Gruß Daniel
AW: VBA nächste durch 13 teilbare Zahl
05.05.2020 07:52:26
W
Hallo Daniel,
auch Dir recht herzlichen Dank für Deine Antwort. Ich habe beide von Dir vorgestellten Lösungen probiert und festgestellt, dass beide das gewünscht Ergebnis liefern.
Die Version mit MOD werde ich schnell wieder vergessen; da braucht man einige Zeit, um die Logik dieser Formel zu durchschauen.
Dein Vorschlag mit Ceiling sieht sehr gut aus und ist sogar übersichtlicher als der Vorschlag von Ralf mit RoundUp. Jetzt bin ich am Schwanken, welche Variante ich letztlich einsetze.
Nochmals: alle mitgeteilten Lösungen funktionierten - soweit ich sie getestet habe. Dazu habe ich die Ausgangszahlen 12, 13 und 14 verwendet und dabei jeweils die Ergebnisse 13, 13 und 26 erhalten.
Gruß
W H21
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige