30.12.2018, 19:31 (Dieser Beitrag wurde zuletzt bearbeitet: 30.12.2018, 19:31 von echo.)
Hallo zusammen, da ich mich mit der Syntax nicht auskenne wäre ich über Hilfe sehr dankbar.
Ich muss regelmäßig berechnen wie oft ein Wert zB. durch 150 teilbar ist und wie groß der REST ist. Ich suche also die Syntax einer benutzerdefinierten Funktion für folgende Formel:
Das gleiche wenn möglich in einer weiteren Funktion auch umgekehrt. A1= + 44 . 071 B1=150 Ergebnis = 6671 Meine Formel : =(ABS(GLÄTTEN(LINKS(WECHSELN(A1;".";WIEDERHOLEN(" ";50));10)))*B1+TEIL(A1;FINDEN(".";A1)+2;99))*WENN(ISTFEHLER(FINDEN("-";A1));1;-1)
Ich habe einfach mal einige Werte in eine Liste eingegeben und die Formeln die ich ersetzen möchte eingefügt
Public Function TeilerErmitteln(Wert As Long, Teiler As Long) As String TeilerErmitteln = IIf(Wert < 0, "- ", "+ ") & Abs(Wert) \ Teiler & " . " & Format(Abs(Wert) Mod Teiler, "000") End Function Public Function TeilerRueckrechnung(Eingabe As String, Teiler As Long) As Long Dim temp temp = Split(Eingabe, " . ") TeilerRueckrechnung = IIf(Left(Eingabe, 1) = "-", -1, 1) * (Abs(CLng(temp(0))) * Teiler + temp(1)) End Function
Gruß Michael
Folgende(r) 1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag:1 Nutzer sagt Danke an Der Steuerfuzzi für diesen Beitrag 28 • echo
30.12.2018, 20:41 (Dieser Beitrag wurde zuletzt bearbeitet: 30.12.2018, 20:41 von echo.)
Hallo Michael ich bedanke mich recht herzlich, funktioniert perfekt und sieht in der Liste doch viel besser aus wie meine Formel!
GELÖST
Allen fleißigen Helfern in diesem tollen Forum auf diesem Wege noch mal DANKE. Alle Zusammen, einen guten Rutsch sowie ein glückliches und gesundes Jahr 2019.
Wenn Du eine funktionierende Formel hast, dann kannst du das in VBA immer mit der Funktion Evaluate (die noch viel mehr kann) ausgeben lassen. Ich habe es mal in Dein Beispiel mit eingetragen: :21: [attachment=21615]
Dir auch einen Guten Rutsch und ein Gutes Neues Jahr...
Folgende(r) 1 Nutzer sagt Danke an Gast für diesen Beitrag:1 Nutzer sagt Danke an Gast für diesen Beitrag 28 • echo
30.12.2018, 21:32 (Dieser Beitrag wurde zuletzt bearbeitet: 30.12.2018, 21:32 von echo.)
(30.12.2018, 21:10)Case schrieb: nur als Ergänzung zu Michaels Funktion: Wenn Du eine funktionierende Formel hast, dann kannst du das in VBA immer mit der Funktion Evaluate (die noch viel mehr kann) ausgeben lassen. Ich habe es mal in Dein Beispiel mit eingetragen: :21:
Hallo @ Case Mit der Info ist für mich eine benutzerdefinierte Funktion einfacher zu erstellen. DANKE da kommt jetzt aber sofort eine neue Frage auf: Du hasst die Datei als *.xlsb gespeichert. Wo liegt der Unterschied zu *.xlsm Gruß Holger
ich speichere meine Dateien in der Regel immer im "XLSB-Format". Hier werden die Daten binär gespeichert. Die Datei ist vom Speichervolumen kleiner, öffnet und speichert scheller. :21:
Folgende(r) 1 Nutzer sagt Danke an Gast für diesen Beitrag:1 Nutzer sagt Danke an Gast für diesen Beitrag 28 • echo