Malheureusement, il semble que je n'ait pas été explicite suffisamment, car ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le forum Access. dixit Raymond : ================================================ tu dépasses les limites maxi d'un double : aide access: Les variables de type Double (à virgule flottante en double précision) sont stockées sous la forme de nombres à virgule flottante de 64 bits (8 octets) IEEE dont la valeur est comprise entre -1,79769313486231E308 et -4,94065645841247E-324 pour les nombres négatifs et entre 4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi avec ce montant ?
================================================= auquel j'ai répondu : ================================================= Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de mon compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au format international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format texte, je me suis résigné à écrire une procédure comparant un à un les différents chiffres composant ces numéros, me donnant le plus grand des deux.
Encore merci, et bon courage... ================================================== merci à toi ... --
Bien cordialement,
Joël GARBE www.joelgarbe.fr "AV" a écrit dans le message de news: Or%
MsgBox [N1] > [N2]
AV
Merci AV pour t'être penché sur ma question...
Malheureusement, il semble que je n'ait pas été explicite suffisamment, car
ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le
forum Access.
dixit Raymond :
================================================ tu dépasses les limites maxi d'un double :
aide access:
Les variables de type Double (à virgule flottante en double précision) sont
stockées sous la forme de nombres à virgule flottante de 64 bits (8 octets)
IEEE dont la valeur est comprise entre -1,79769313486231E308
et -4,94065645841247E-324 pour les nombres négatifs et entre
4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le
caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi
avec ce montant ?
=================================================
auquel j'ai répondu :
================================================= Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de mon
compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au format
international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format
texte, je me suis résigné à écrire une procédure comparant un à un les
différents chiffres composant ces numéros, me donnant le plus grand des
deux.
Encore merci, et bon courage...
==================================================
merci à toi ...
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news:
Or%23nEbgXGHA.1220@TK2MSFTNGP02.phx.gbl...
Malheureusement, il semble que je n'ait pas été explicite suffisamment, car ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le forum Access. dixit Raymond : ================================================ tu dépasses les limites maxi d'un double : aide access: Les variables de type Double (à virgule flottante en double précision) sont stockées sous la forme de nombres à virgule flottante de 64 bits (8 octets) IEEE dont la valeur est comprise entre -1,79769313486231E308 et -4,94065645841247E-324 pour les nombres négatifs et entre 4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi avec ce montant ?
================================================= auquel j'ai répondu : ================================================= Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de mon compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au format international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format texte, je me suis résigné à écrire une procédure comparant un à un les différents chiffres composant ces numéros, me donnant le plus grand des deux.
Encore merci, et bon courage... ================================================== merci à toi ... --
Bien cordialement,
Joël GARBE www.joelgarbe.fr "AV" a écrit dans le message de news: Or%
MsgBox [N1] > [N2]
AV
Norvi
Bonjour,
Une fonction (qui doit pouvoir être grandement simplifiée !!!) qui te permet de comparer deux numéros stockés au format texte, quelque soit leur nombre de caractères :
Function COMPARE(Val1, Val2) Dim Nb_Analyse, Nb_LastNombre, Limite_Excel, i As Integer Dim ListeComparaison()
If Len(Val1) > Len(Val2) Then COMPARE = Val1 & " est supérieure à " & Val2 If Len(Val1) < Len(Val2) Then COMPARE = Val2 & " est supérieure à " & Val1 If Len(Val1) = Len(Val2) Then Limite_Excel = 11
For i = 1 To Nb_Analyse Nb_LastNombre = Limite_Excel - ((Limite_Excel * Nb_Analyse) - Len(Val1)) If i = Nb_Analyse Then Nb_LastNombre = Limite_Excel - ((Limite_Excel * Nb_Analyse) - Len(Val1)) Else Nb_LastNombre = Limite_Excel End If
ReDim Preserve ListeComparaison(1, i) ListeComparaison(0, i - 1) = Right(Left(Val1, (Limite_Excel * i)), Nb_LastNombre) ListeComparaison(1, i - 1) = Right(Left(Val2, (Limite_Excel * i)), Nb_LastNombre) Next
For i = 1 To Nb_Analyse If ListeComparaison(0, i - 1) > ListeComparaison(1, i - 1) Then COMPARE = Val1 & " est le plus grand" If ListeComparaison(0, i - 1) < ListeComparaison(1, i - 1) Then COMPARE = Val2 & " est le plus grand" If ListeComparaison(0, i - 1) = ListeComparaison(1, i - 1) Then COMPARE = Val1 & " et " & Val2 & " sont égaux" Next End If
End Function
Bonjour,
Une fonction (qui doit pouvoir être grandement simplifiée !!!) qui te
permet de comparer deux numéros stockés au format texte, quelque soit
leur nombre de caractères :
Function COMPARE(Val1, Val2)
Dim Nb_Analyse, Nb_LastNombre, Limite_Excel, i As Integer
Dim ListeComparaison()
If Len(Val1) > Len(Val2) Then COMPARE = Val1 & " est supérieure à " &
Val2
If Len(Val1) < Len(Val2) Then COMPARE = Val2 & " est supérieure à " &
Val1
If Len(Val1) = Len(Val2) Then
Limite_Excel = 11
For i = 1 To Nb_Analyse
Nb_LastNombre = Limite_Excel - ((Limite_Excel * Nb_Analyse) -
Len(Val1))
If i = Nb_Analyse Then
Nb_LastNombre = Limite_Excel - ((Limite_Excel * Nb_Analyse) -
Len(Val1))
Else
Nb_LastNombre = Limite_Excel
End If
ReDim Preserve ListeComparaison(1, i)
ListeComparaison(0, i - 1) = Right(Left(Val1, (Limite_Excel * i)),
Nb_LastNombre)
ListeComparaison(1, i - 1) = Right(Left(Val2, (Limite_Excel * i)),
Nb_LastNombre)
Next
For i = 1 To Nb_Analyse
If ListeComparaison(0, i - 1) > ListeComparaison(1, i - 1) Then COMPARE
= Val1 & " est le plus grand"
If ListeComparaison(0, i - 1) < ListeComparaison(1, i - 1) Then COMPARE
= Val2 & " est le plus grand"
If ListeComparaison(0, i - 1) = ListeComparaison(1, i - 1) Then COMPARE
= Val1 & " et " & Val2 & " sont égaux"
Next
End If
Une fonction (qui doit pouvoir être grandement simplifiée !!!) qui te permet de comparer deux numéros stockés au format texte, quelque soit leur nombre de caractères :
Function COMPARE(Val1, Val2) Dim Nb_Analyse, Nb_LastNombre, Limite_Excel, i As Integer Dim ListeComparaison()
If Len(Val1) > Len(Val2) Then COMPARE = Val1 & " est supérieure à " & Val2 If Len(Val1) < Len(Val2) Then COMPARE = Val2 & " est supérieure à " & Val1 If Len(Val1) = Len(Val2) Then Limite_Excel = 11
For i = 1 To Nb_Analyse Nb_LastNombre = Limite_Excel - ((Limite_Excel * Nb_Analyse) - Len(Val1)) If i = Nb_Analyse Then Nb_LastNombre = Limite_Excel - ((Limite_Excel * Nb_Analyse) - Len(Val1)) Else Nb_LastNombre = Limite_Excel End If
ReDim Preserve ListeComparaison(1, i) ListeComparaison(0, i - 1) = Right(Left(Val1, (Limite_Excel * i)), Nb_LastNombre) ListeComparaison(1, i - 1) = Right(Left(Val2, (Limite_Excel * i)), Nb_LastNombre) Next
For i = 1 To Nb_Analyse If ListeComparaison(0, i - 1) > ListeComparaison(1, i - 1) Then COMPARE = Val1 & " est le plus grand" If ListeComparaison(0, i - 1) < ListeComparaison(1, i - 1) Then COMPARE = Val2 & " est le plus grand" If ListeComparaison(0, i - 1) = ListeComparaison(1, i - 1) Then COMPARE = Val1 & " et " & Val2 & " sont égaux" Next End If
End Function
Jacquouille
Bonjour S'il n'y a vraiment que des chiffres, pourquoi ne pas les multiplier par 1 dans une autre cellule, puis effectuer la comparaison des résultats ?
-- Bien amicalmement, Vivement conseillés: http://www.excelabo.net http://jacxl.free.fr/mpfe/trombino.html http://dj.joss.free.fr/netiquet.htm http://frederic.sigonneau.free.fr/
Jacquouille.
"Joël" a écrit dans le message de news: 443cb5f6$0$18316$
Merci AV pour t'être penché sur ma question...
Malheureusement, il semble que je n'ait pas été explicite suffisamment, car ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le forum Access. dixit Raymond : ================================================ > tu dépasses les limites maxi d'un double : aide access: Les variables de type Double (à virgule flottante en double précision) sont stockées sous la forme de nombres à virgule flottante de 64 bits (8 octets) IEEE dont la valeur est comprise entre -1,79769313486231E308 et -4,94065645841247E-324 pour les nombres négatifs et entre 4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi avec ce montant ?
================================================= > auquel j'ai répondu : ================================================= > Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de mon compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au format international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format texte, je me suis résigné à écrire une procédure comparant un à un les différents chiffres composant ces numéros, me donnant le plus grand des deux.
Encore merci, et bon courage... ================================================== > merci à toi ... --
Bien cordialement,
Joël GARBE www.joelgarbe.fr "AV" a écrit dans le message de news: Or%
MsgBox [N1] > [N2]
AV
Bonjour
S'il n'y a vraiment que des chiffres, pourquoi ne pas les multiplier par 1
dans une autre cellule, puis effectuer la comparaison des résultats ?
--
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
http://frederic.sigonneau.free.fr/
Jacquouille.
"Joël" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
443cb5f6$0$18316$8fcfb975@news.wanadoo.fr...
Merci AV pour t'être penché sur ma question...
Malheureusement, il semble que je n'ait pas été explicite suffisamment,
car ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le
forum Access.
dixit Raymond :
================================================ > tu dépasses les limites maxi d'un double :
aide access:
Les variables de type Double (à virgule flottante en double précision)
sont
stockées sous la forme de nombres à virgule flottante de 64 bits (8
octets)
IEEE dont la valeur est comprise entre -1,79769313486231E308
et -4,94065645841247E-324 pour les nombres négatifs et entre
4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le
caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi
avec ce montant ?
================================================= >
auquel j'ai répondu :
================================================= > Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de
mon
compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au format
international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format
texte, je me suis résigné à écrire une procédure comparant un à un les
différents chiffres composant ces numéros, me donnant le plus grand des
deux.
Encore merci, et bon courage...
================================================== >
merci à toi ...
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news:
Or%23nEbgXGHA.1220@TK2MSFTNGP02.phx.gbl...
Bonjour S'il n'y a vraiment que des chiffres, pourquoi ne pas les multiplier par 1 dans une autre cellule, puis effectuer la comparaison des résultats ?
-- Bien amicalmement, Vivement conseillés: http://www.excelabo.net http://jacxl.free.fr/mpfe/trombino.html http://dj.joss.free.fr/netiquet.htm http://frederic.sigonneau.free.fr/
Jacquouille.
"Joël" a écrit dans le message de news: 443cb5f6$0$18316$
Merci AV pour t'être penché sur ma question...
Malheureusement, il semble que je n'ait pas été explicite suffisamment, car ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le forum Access. dixit Raymond : ================================================ > tu dépasses les limites maxi d'un double : aide access: Les variables de type Double (à virgule flottante en double précision) sont stockées sous la forme de nombres à virgule flottante de 64 bits (8 octets) IEEE dont la valeur est comprise entre -1,79769313486231E308 et -4,94065645841247E-324 pour les nombres négatifs et entre 4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi avec ce montant ?
================================================= > auquel j'ai répondu : ================================================= > Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de mon compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au format international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format texte, je me suis résigné à écrire une procédure comparant un à un les différents chiffres composant ces numéros, me donnant le plus grand des deux.
Encore merci, et bon courage... ================================================== > merci à toi ... --
Bien cordialement,
Joël GARBE www.joelgarbe.fr "AV" a écrit dans le message de news: Or%
MsgBox [N1] > [N2]
AV
Clément Marcotte
Bonjour,
Y a juste le problème de la limite de 15 chiffres dans Excel... ;-)
"Jacquouille" a écrit dans le message de news: eCggc%
Bonjour S'il n'y a vraiment que des chiffres, pourquoi ne pas les multiplier par 1 dans une autre cellule, puis effectuer la comparaison des résultats ?
-- Bien amicalmement, Vivement conseillés: http://www.excelabo.net http://jacxl.free.fr/mpfe/trombino.html http://dj.joss.free.fr/netiquet.htm http://frederic.sigonneau.free.fr/
Jacquouille.
"Joël" a écrit dans le message de news: 443cb5f6$0$18316$
Merci AV pour t'être penché sur ma question...
Malheureusement, il semble que je n'ait pas été explicite suffisamment, car ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le forum Access. dixit Raymond : ================================================ >> tu dépasses les limites maxi d'un double : aide access: Les variables de type Double (à virgule flottante en double précision) sont stockées sous la forme de nombres à virgule flottante de 64 bits (8 octets) IEEE dont la valeur est comprise entre -1,79769313486231E308 et -4,94065645841247E-324 pour les nombres négatifs et entre 4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi avec ce montant ?
================================================= >> auquel j'ai répondu : ================================================= >> Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de mon compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au format international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format texte, je me suis résigné à écrire une procédure comparant un à un les différents chiffres composant ces numéros, me donnant le plus grand des deux.
Encore merci, et bon courage... ================================================== >> merci à toi ... --
Bien cordialement,
Joël GARBE www.joelgarbe.fr "AV" a écrit dans le message de news: Or%
MsgBox [N1] > [N2]
AV
Bonjour,
Y a juste le problème de la limite de 15 chiffres dans Excel... ;-)
"Jacquouille" <NoSpam_j.thiernesse@skynet.be> a écrit dans le message de
news: eCggc%23iXGHA.4144@TK2MSFTNGP04.phx.gbl...
Bonjour
S'il n'y a vraiment que des chiffres, pourquoi ne pas les multiplier par 1
dans une autre cellule, puis effectuer la comparaison des résultats ?
--
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
http://frederic.sigonneau.free.fr/
Jacquouille.
"Joël" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
443cb5f6$0$18316$8fcfb975@news.wanadoo.fr...
Merci AV pour t'être penché sur ma question...
Malheureusement, il semble que je n'ait pas été explicite suffisamment,
car ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le
forum Access.
dixit Raymond :
================================================ >> tu dépasses les limites maxi d'un double :
aide access:
Les variables de type Double (à virgule flottante en double précision)
sont
stockées sous la forme de nombres à virgule flottante de 64 bits (8
octets)
IEEE dont la valeur est comprise entre -1,79769313486231E308
et -4,94065645841247E-324 pour les nombres négatifs et entre
4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le
caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi
avec ce montant ?
================================================= >>
auquel j'ai répondu :
================================================= >> Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de
mon
compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au
format
international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format
texte, je me suis résigné à écrire une procédure comparant un à un les
différents chiffres composant ces numéros, me donnant le plus grand des
deux.
Encore merci, et bon courage...
================================================== >>
merci à toi ...
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news:
Or%23nEbgXGHA.1220@TK2MSFTNGP02.phx.gbl...
Y a juste le problème de la limite de 15 chiffres dans Excel... ;-)
"Jacquouille" a écrit dans le message de news: eCggc%
Bonjour S'il n'y a vraiment que des chiffres, pourquoi ne pas les multiplier par 1 dans une autre cellule, puis effectuer la comparaison des résultats ?
-- Bien amicalmement, Vivement conseillés: http://www.excelabo.net http://jacxl.free.fr/mpfe/trombino.html http://dj.joss.free.fr/netiquet.htm http://frederic.sigonneau.free.fr/
Jacquouille.
"Joël" a écrit dans le message de news: 443cb5f6$0$18316$
Merci AV pour t'être penché sur ma question...
Malheureusement, il semble que je n'ait pas été explicite suffisamment, car ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le forum Access. dixit Raymond : ================================================ >> tu dépasses les limites maxi d'un double : aide access: Les variables de type Double (à virgule flottante en double précision) sont stockées sous la forme de nombres à virgule flottante de 64 bits (8 octets) IEEE dont la valeur est comprise entre -1,79769313486231E308 et -4,94065645841247E-324 pour les nombres négatifs et entre 4,94065645841247E-324 et 1,79769313486231E308 pour les positifs. Le caractère de déclaration de type Double est le signe #.
j'espère que ce n'est pas le solde de ton compte en suisse ? tu fais quoi avec ce montant ?
================================================= >> auquel j'ai répondu : ================================================= >> Merci Raymond pour cette réponse.
Pour information, il ne s'agit pas de montants (ce n'est pas le solde de mon compte en Suisse hélas... quoi que), mais 2 numéros de téléphone au format international que je dois comparer.
Dans la mesure où ces numéros me sont envoyés par l'application au format texte, je me suis résigné à écrire une procédure comparant un à un les différents chiffres composant ces numéros, me donnant le plus grand des deux.
Encore merci, et bon courage... ================================================== >> merci à toi ... --
Bien cordialement,
Joël GARBE www.joelgarbe.fr "AV" a écrit dans le message de news: Or%
MsgBox [N1] > [N2]
AV
Clément Marcotte
Bonjour, Pas testé. (Je le ferai plus tard, si j'ai le temps)
avec, en en-tête de module:
Option compare text
puis:
Sub cesttupareil() N1 = 5434567890123456700 N2 = 5434567890123456799 if N1 >= N2 then endif end sub
"Joël" a écrit dans le message de news: 443cabc9$0$19699$
Bonjour,
Dans VBA, 2 nombres étudiés sous forme de texte contenant 18 chiffres dont les 2 derniers sont différents sont considérés comme égaux !
ex : 5434567890123456700 (N1 sous forme de texte) et 5434567890123456799 (N2 sous forme de texte)
par quelle méthode pourrais-je déterminer le plus grand des 2 ?
La procédure suivante considère que N1 = N2, ce qui n'est pas vrai.
if cdbl(N1) >= cdbl(N2) then msgbox erreur endif
Voius remerciant de vos lumières...
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr
Bonjour,
Pas testé. (Je le ferai plus tard, si j'ai le temps)
avec, en en-tête de module:
Option compare text
puis:
Sub cesttupareil()
N1 = 5434567890123456700
N2 = 5434567890123456799
if N1 >= N2 then
endif
end sub
"Joël" <joel-garbe@wanadoo.fr> a écrit dans le message de news:
443cabc9$0$19699$8fcfb975@news.wanadoo.fr...
Bonjour,
Dans VBA, 2 nombres étudiés sous forme de texte contenant 18 chiffres dont
les 2 derniers sont différents sont considérés comme égaux !
ex :
5434567890123456700 (N1 sous forme de texte)
et
5434567890123456799 (N2 sous forme de texte)
par quelle méthode pourrais-je déterminer le plus grand des 2 ?
La procédure suivante considère que N1 = N2, ce qui n'est pas vrai.
"Clément Marcotte" a écrit dans le message de news:
Bonjour, Pas testé. (Je le ferai plus tard, si j'ai le temps)
avec, en en-tête de module:
Option compare text
puis:
Sub cesttupareil() N1 = 5434567890123456700 N2 = 5434567890123456799 if N1 >= N2 then endif end sub
"Joël" a écrit dans le message de news: 443cabc9$0$19699$
Bonjour,
Dans VBA, 2 nombres étudiés sous forme de texte contenant 18 chiffres dont les 2 derniers sont différents sont considérés comme égaux !
ex : 5434567890123456700 (N1 sous forme de texte) et 5434567890123456799 (N2 sous forme de texte)
par quelle méthode pourrais-je déterminer le plus grand des 2 ?
La procédure suivante considère que N1 = N2, ce qui n'est pas vrai.
if cdbl(N1) >= cdbl(N2) then msgbox erreur endif
Voius remerciant de vos lumières...
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr
Patrick BASTARD
Bonjour, *Joël*
Un début de solution, sans VBA, et si on ne compare que les 16 premiers chiffres de 2 nombres situés en A1 et A2: =SI(GAUCHE(A1;16)>=GAUCHE(A2;16);A1;A2) Si c'est le résultat souhaité, facile à adapter avec l'enregistreur de macro -- Bien amicordialement, P. Bastard
Bonjour,
Dans VBA, 2 nombres étudiés sous forme de texte contenant 18 chiffres dont les 2 derniers sont différents sont considérés comme égaux !
ex : 5434567890123456700 (N1 sous forme de texte) et 5434567890123456799 (N2 sous forme de texte)
par quelle méthode pourrais-je déterminer le plus grand des 2 ?
La procédure suivante considère que N1 = N2, ce qui n'est pas vrai.
if cdbl(N1) >= cdbl(N2) then msgbox erreur endif
Voius remerciant de vos lumières...
Bonjour, *Joël*
Un début de solution, sans VBA, et si on ne compare que les 16 premiers
chiffres de 2 nombres situés en A1 et A2:
=SI(GAUCHE(A1;16)>=GAUCHE(A2;16);A1;A2)
Si c'est le résultat souhaité, facile à adapter avec l'enregistreur de macro
--
Bien amicordialement,
P. Bastard
Bonjour,
Dans VBA, 2 nombres étudiés sous forme de texte contenant 18 chiffres
dont les 2 derniers sont différents sont considérés comme égaux !
ex :
5434567890123456700 (N1 sous forme de texte)
et
5434567890123456799 (N2 sous forme de texte)
par quelle méthode pourrais-je déterminer le plus grand des 2 ?
La procédure suivante considère que N1 = N2, ce qui n'est pas vrai.
Un début de solution, sans VBA, et si on ne compare que les 16 premiers chiffres de 2 nombres situés en A1 et A2: =SI(GAUCHE(A1;16)>=GAUCHE(A2;16);A1;A2) Si c'est le résultat souhaité, facile à adapter avec l'enregistreur de macro -- Bien amicordialement, P. Bastard
Bonjour,
Dans VBA, 2 nombres étudiés sous forme de texte contenant 18 chiffres dont les 2 derniers sont différents sont considérés comme égaux !
ex : 5434567890123456700 (N1 sous forme de texte) et 5434567890123456799 (N2 sous forme de texte)
par quelle méthode pourrais-je déterminer le plus grand des 2 ?
La procédure suivante considère que N1 = N2, ce qui n'est pas vrai.
if cdbl(N1) >= cdbl(N2) then msgbox erreur endif
Voius remerciant de vos lumières...
AV
| Malheureusement, il semble que je n'ait pas été explicite suffisamment, car | ta proposition ne fonctionne pas sur des nombre à 18 chiffres. | Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le | forum Access.
Avec des cellules au format texte, chez moi il n y'a aucun souci dans le nombre de chiffres !
Voir là : http://cjoint.com/?emtAAb3FgV
AV
| Malheureusement, il semble que je n'ait pas été explicite suffisamment, car
| ta proposition ne fonctionne pas sur des nombre à 18 chiffres.
| Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le
| forum Access.
Avec des cellules au format texte, chez moi il n y'a aucun souci dans le nombre
de chiffres !
| Malheureusement, il semble que je n'ait pas été explicite suffisamment, car | ta proposition ne fonctionne pas sur des nombre à 18 chiffres. | Mais ne te fatigue pas plus, j'ai une une réponse d'impossibilité sur le | forum Access.
Avec des cellules au format texte, chez moi il n y'a aucun souci dans le nombre de chiffres !