Pair - Impair et lettres ...

  • Initiateur de la discussion Initiateur de la discussion vince
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

V

vince

Guest
bonjour,

voici la colle du jour qui me tient en haleine depuis un petit bout de
tps... je vais tenter de tout expliquer clairement.
j'ai un fichier d'adresses avec 4 champs :
- rue
- numéro d'adresse maximum
- numéro d'adresse minimum
- intervalle et information pair ou impaire (ex : 1-3 veut dire que
l'intervalle d'adresse va de 1 à 3 mais comprend des numéros paire et
impaire; 1--3 veut dire que l'intervalle d'adresse va de 1 à 3 mais
uniquement avec un seul type de parité et ici impaire en l'occurence)

mon but est d'arriver à obtenir un champ qui me dise pour chaque rue soit P
pour paire, soit I pour Impaire, soit PI pour les deux.

Le probleme est que les numéros d'adresse sont parfois du style 40B ou 1C ou
118D ! donc on ne peut les traiter que comme des nombres !!

j'essaie de me débarrasser de cette lettre pour mesurer la parité mais cela
me demande d'effectuer des conditions multiples qui ne fonctionnne pas
vraiment avec excell

par ailleur il me faudrait aussi créer un champ d'adresse max et un
d'adresse min mais sans les adresses 'lettrées'...

merci de vos réflexions si vous avez un peu de tps à perdre pour moi !! 🙂

je vous ait joint une partie du fichier pour que puissiez voir tout ce que j'ai déjà tripatouiller mais comme vous pouvez le voir à la ligne 20, la formule de la colonne B n'est pas assez effective car réduite à la prise en compte de A, il faudrait prendre en compte toute les lettres...

MERCI 😱 😱
 
oups le fichier est pas passé on dirait...
[file name=extrait.zip size=4686]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/extrait.zip[/file]

je ne comprends pas très bien comment cela marche 😱
 

Pièces jointes

Bonjour Vince,

Pour ton problème de numéros Chiffre + lettres, utilise simplement la fonction Val

Sub Soluce()
Feuil1.Activate
Range('C2', Range('D65536').End(xlUp)).Select
For Each cell In Selection
MsgBox Val(cell)
Next cell


End Sub
En mettant ce petit test dans un module pour essayer, tu verras si c'est OK à adapter à ton besoin !

Cordialement,

Bfr B)

Message édité par: bricofire, à: 01/03/2005 10:50
 
merci pour ta réponse !

malheureusement je ne comprends pas trop ce que tu me dis... :unsure:

je ne trouve pas de fonction 'val' dans exell et je ne vois pas trop ce qu'est le code que tu m'as donné... je dois en faire quoi ?

désolé je ne suis pas un expert exell 😱
 
RE,
Excuses, j' ai zappé le fait que tu ne faisais pas de macros, Val est une fonction VBA qu'on utilise ici dans un cas particulier en considérant le fait que tes numéros de rues seront toujours de structure simple avec des chiffres et une ou des lettres à la fin sans A A autres signes. 37 A est OK, mais 37A5 ne le serait pas avec cette astuce...

Je te mets la description de la fonction à suivre, et t'envoie dans un autre post comment faire une macro...

Val, fonction


Renvoie le nombre contenu dans une chaîne de caractère sous la forme d'une valeur numérique d'un type approprié.

Syntaxe

Val(string)

L'argument string peut être n'importe quelle expression de chaîne.

Remarques

La fonction Val arrête la lecture de la chaîne au premier caractère ne faisant apparemment pas partie d'un nombre. Les symboles et caractères fréquemment associés aux valeurs numériques, comme le signe $ et les virgules ne sont pas reconnus. En revanche, la fonction reconnaît les préfixes &O (pour octal) et &H (pour hexadécimal). Les espaces, les tabulations et les caractères de saut de ligne ne sont pas pris en compte dans l'argument


à suivre...

Bfr
 
Bonjour,

Je ne sais pas si j'ai tout compris,
mais on peut y arriver en une seule formule
(2 formules, si tu veux)
[file name=PariteVince.zip size=3750]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/PariteVince.zip[/file]
 

Pièces jointes

ok merci je vais regarder tout ca !!

il y aussi un autre gars qui m'a filé cette formule :
=si(mod(si(esterreur(droite(B2;1)+0);gauche(B2;NBcar(B2)-1)+0;B2);2)=0;'P';'I')

et elle marche du tonnerre !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour