Comment inserer un espace entre chiffres et lettre d'une cellule ?

Bonjour a tous,

Dans le cadre du développement d'un classeur avec formulaire de saisie sans VBA, une cellule doit contenir le N° d'immatriculation d'un véhicule.

En France, il existe 2 format d'immatriculation qui cohabitent encore :

  • L'ancien format composé de 3 ou 4 chiffres, suivis de lettres et terminés par un N° de département "000 AA 00"
  • Le nouveau format appelé SIV qui lui, comporte 2 lettres, 3 chiffres et de nouveau 2 lettres "AA-000-AA"

Quel format de cellule puis-je bien utiliser pour qu'un espace s’insère automatiquement entre les chiffres et les lettres, et ce, quel que soit le format d'immatriculation du véhicule saisi ?

Merci pour votre aide, et ce forum que je découvre.

AlainD

Salut,

Quelques précisions que tu dois apporter pour répondre exactement à ton besoin :

  • Tu parles de format de cellule (auquel cas les tirets restent dans la donnée de base, mais n'apparaissent pas en clair sur les cellules) ou de transformation par formule (dans ce cas les tirets sont réellement remplacés par des espaces) ?
  • Tu parles d'espaces, souhaites-tu juste que les tirets soient remplacés par des espaces ?

En attendant ton retour.

Bonjour,

un format ne s'applique qu'à des nombres. Les plaques avec lettres sont des chaines.

Par formule dans une autre colonne :

=SI(ESTNUM(--GAUCHE(A2;1));GAUCHE(A2;3)&" "&STXT(A2;4;2)&" "&DROITE(A2;2);GAUCHE(A2;2)&" "&STXT(A2;3;3)&" "&DROITE(A2;2))

Sinon il faut une macro vba pour traiter la saisie et remplacer.

Les question d'ergotamine restent entières, notamment sur la présence ou non de tirets.

eric

Salut,

Quelques précisions :

Tu parles de format de cellule (auquel cas les tirets restent dans la donnée de base, mais n'apparaissent pas en clair sur les cellules) ou de transformation par formule (dans ce cas les tirets sont réellement remplacés par des espaces) ?

Je suis bien entendu preneur du fait que les tirets apparaissent dans la base, néanmoins, les tirets en question n'existent que dans le nouveau format d'immatriculation. L'ancien étant composé avec les espaces.

A préciser aussi, que lors de la saisie dans le formulaire, la frappe devrait pour se faire sans aucun espace, ni tirets. (saisie AA000AA ou 000AA00 qui serait transformé en AA-000-AA ou 000 AA 00)

Il faudrait alors que si l'immatriculation commence par des chiffres, les tirets n'existent pas (remplacés par un espace), et si cette immatriculation commence par des lettres, ils apparaissent alors.

(je crois bien que je viens de poser le doigt sur un début de solution avec mon "SI" "ALORS" )

Tu parles d'espaces, souhaites-tu juste que les tirets soient remplacés par des espaces ?

Les tirets n'ayant pas une très grande importance a mes yeux, ils pourraient par soucis de simplicité, disparaître et être éventuellement remplacés par des espaces. (Hors sujet, mais intéressant, le format SIV est très proche du format Italien, la seule façon de les différencier et ce fameux tiret qui n'existe pas en Italie )

Bonjour AlainD, le forum

Testez l'énorme formule ci-dessous

=SI(ET(CODE(DROITE(A1;1))<65;CODE(GAUCHE(DROITE(A1;3);1))<65;CODE(GAUCHE(DROITE(A1;5);1))<65);CONCATENER(GAUCHE(A1;NBCAR(A1)-4);" ";GAUCHE(DROITE(A1;4);2);" ";DROITE(A1;2));SI(ET(CODE(DROITE(A1;1))<65;CODE(GAUCHE(DROITE(A1;3);1))<65;CODE(GAUCHE(DROITE(A1;4);1))<65);CONCATENER(GAUCHE(A1;NBCAR(A1)-4);" ";GAUCHE(DROITE(A1;4);2);" ";DROITE(A1;2));SI(ET(CODE(DROITE(A1;1))<65;CODE(GAUCHE(DROITE(A1;3);1))>64;CODE(GAUCHE(DROITE(A1;5);1))<65);CONCATENER(GAUCHE(A1;NBCAR(A1)-4);" ";GAUCHE(DROITE(A1;4);2);" ";DROITE(A1;2));SI(ET(CODE(DROITE(A1;1))<65;CODE(GAUCHE(DROITE(A1;3);1))<65;CODE(GAUCHE(DROITE(A1;4);1))<65);CONCATENER(GAUCHE(A1;NBCAR(A1)-4);" ";GAUCHE(DROITE(A1;4);2);" ";DROITE(A1;2));SI(ET(NBCAR(A1)=7;CODE(GAUCHE(A1;1))>64;CODE(DROITE(A1;1))>64);CONCATENER(GAUCHE(A1;2);"-";DROITE(GAUCHE(A1;5);3);"-";DROITE(A1;2));"")))))

Elle ne répond pas encore aux anciennes immatriculations, qui existaient avec trois lettres au milieu, faites moi savoir si ça vous sera utile

Bonjour a tous,

Pas de retour sur ça : viewtopic.php?p=829726#p829726 ?

Alors si, j'ai testé la formule, elle ne fonctionne pas avec l'ancien format immatriculation, par contre avec le nouveau format elle fonctionne nickel. j'ai juste rajouté les tirets au lieu des espaces en fin de formule.

njhub ta formule est parfaite, je viens de la tester et elle distingue bien les 2 formats.

Je ne suis que très rarement, pour ne pas dire jamais confronté aux anciennes immatriculation a 3 lettres centrales.

Il ne me reste plus qu'a la décortiquer pour bien la comprendre, c'est comme ça qu'on apprends, non?

En attendant, je remercie tous les participants pour votre aide.

Alain

Rechercher des sujets similaires à "comment inserer espace entre chiffres lettre"