Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Équivalence entre a Mod b et MOD(a;b)

9 réponses
Avatar
Tatanka
Bonjour,

Une façon de faire pour obtenir en VBA le même résultat que la fonction MOD(a;b).
Utiliser cette fonction personnalisée:
Function modfc(a, b)
modfc = a - b * Int(a / b)
End Function
Qu'en pensez-vous?

Serge
http://fr.wikipedia.org/wiki/Modulo_(informatique)

9 réponses

Avatar
Tatanka
Curieux, le lien de mon précédent message ne conduit pas à la page dont j'ai copié l'adresse!

A--
Serge
Avatar
LSteph
Bonjour,

[Mod(3.5, 2)]

--
LSteph

On 5 août, 23:40, "Tatanka" wrote:
Bonjour,

Une façon de faire pour obtenir en VBA le même résultat que la fonc tion MOD(a;b).
Utiliser cette fonction personnalisée:
Function modfc(a, b)
    modfc = a - b * Int(a / b)
End Function
Qu'en pensez-vous?

Sergehttp://fr.wikipedia.org/wiki/Modulo_(informatique)
Avatar
Tatanka
J'y avais pensé. Mais on ne peut pas lui passer de variabes.
[Mod(3.5, 2)], [Mod(A1,B1)], ..., c'est OK mais avec des variables ?

Serge

"LSteph" a écrit dans le message de news:
Bonjour,

[Mod(3.5, 2)]

--
LSteph

On 5 août, 23:40, "Tatanka" wrote:
Bonjour,

Une façon de faire pour obtenir en VBA le même résultat que la fonction MOD(a;b).
Utiliser cette fonction personnalisée:
Function modfc(a, b)
modfc = a - b * Int(a / b)
End Function
Qu'en pensez-vous?

Sergehttp://fr.wikipedia.org/wiki/Modulo_(informatique)
Avatar
michdenis
Bonjour,

Ceci
x = [Mod(3.5, 2)]

OU
Dim Nombre As Double, Module As Integer
Nombre = 3.5: modulo = 2
y = Evaluate("Mod(""" & Replace(Nombre, ",", ".") & """," & modulo & ")")

--
MichD
--------------------------------------------


"Tatanka" a écrit dans le message de groupe de discussion :
i3h14b$62h$
J'y avais pensé. Mais on ne peut pas lui passer de variabes.
[Mod(3.5, 2)], [Mod(A1,B1)], ..., c'est OK mais avec des variables ?

Serge

"LSteph" a écrit dans le message de news:

Bonjour,

[Mod(3.5, 2)]

--
LSteph

On 5 août, 23:40, "Tatanka" wrote:
Bonjour,

Une façon de faire pour obtenir en VBA le même résultat que la fonction MOD(a;b).
Utiliser cette fonction personnalisée:
Function modfc(a, b)
modfc = a - b * Int(a / b)
End Function
Qu'en pensez-vous?

Sergehttp://fr.wikipedia.org/wiki/Modulo_(informatique)
Avatar
michdenis
Ou ceci :
y = Evaluate("Mod(" & Replace(Nombre, ",", ".") & "," & modulo & ")")

--
MichD
--------------------------------------------
Avatar
LSteph
ou encore

y = (a * 10000 Mod b * 10000) / 10000



On 6 août, 15:02, "Tatanka" wrote:
J'y avais pensé.  Mais on ne peut pas lui passer de variabes.
[Mod(3.5, 2)], [Mod(A1,B1)], ..., c'est OK mais avec des variables ?

Serge

"LSteph" a écrit dans le message de news: d2ed188f
Bonjour,

[Mod(3.5, 2)]

--
LSteph

On 5 août, 23:40, "Tatanka" wrote:



> Bonjour,

> Une façon de faire pour obtenir en VBA le même résultat que la fo nction MOD(a;b).
> Utiliser cette fonction personnalisée:
> Function modfc(a, b)
> modfc = a - b * Int(a / b)
> End Function
> Qu'en pensez-vous?

> Sergehttp://fr.wikipedia.org/wiki/Modulo_(informatique)- Masquer le tex te des messages précédents -

- Afficher le texte des messages précédents -
Avatar
LSteph
ou même encore avec celui de vb

y = (a * 10 ^ 4 Mod b * 10 ^ 4) / 10 ^ 4




On 6 août, 15:02, "Tatanka" wrote:
J'y avais pensé.  Mais on ne peut pas lui passer de variabes.
[Mod(3.5, 2)], [Mod(A1,B1)], ..., c'est OK mais avec des variables ?

Serge

"LSteph" a écrit dans le message de news: d2ed188f
Bonjour,

[Mod(3.5, 2)]

--
LSteph

On 5 août, 23:40, "Tatanka" wrote:



> Bonjour,

> Une façon de faire pour obtenir en VBA le même résultat que la fo nction MOD(a;b).
> Utiliser cette fonction personnalisée:
> Function modfc(a, b)
> modfc = a - b * Int(a / b)
> End Function
> Qu'en pensez-vous?

> Sergehttp://fr.wikipedia.org/wiki/Modulo_(informatique)- Masquer le tex te des messages précédents -

- Afficher le texte des messages précédents -
Avatar
Tatanka
Parlons-nous de la même chose ? :-)

Function modfctatanka(a As Double, b As Double)
'Toujours égal à =MOD(a;b)
modfctatanka = a - b * Int(a / b)
End Function

Function modfcsteph1(a As Double, b As Double)
'Pas toujours égal à =MOD(a;b)
modfcsteph1 = (a * 10000 Mod b * 10000) / 10000
End Function

Function modfcsteph2(a As Double, b As Double)
'Pas toujours égal à =MOD(a;b)
modfcsteph2 = (a * 10 ^ 4 Mod b * 10 ^ 4) / 10 ^ 4
End Function

Serge
Avatar
LSteph
pour ma première suggestion c toujours
sinon pour (variables) lire expression proposée par michdenis
pour les autres suggestions
hum hum .. pas toujours égal
mais si mais attention si single 10^4 double 10^8

@+

On 6 août, 18:11, "Tatanka" wrote:
Parlons-nous de la même chose ? :-)

Function modfctatanka(a As Double, b As Double)
     'Toujours égal à =MOD(a;b)
     modfctatanka = a - b * Int(a / b)
End Function

Function modfcsteph1(a As Double, b As Double)
     'Pas toujours égal à =MOD(a;b)
     modfcsteph1 = (a * 10000 Mod b * 10000) / 10000
End Function

Function modfcsteph2(a As Double, b As Double)
     'Pas toujours égal à =MOD(a;b)
     modfcsteph2 = (a * 10 ^ 4 Mod b * 10 ^ 4) / 10 ^ 4
End Function

Serge