Sélectionner numéro de série dans excel
Résolu
rona01
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
rona01 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
rona01 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis en train de travaillé sur excel avec une liste de donnée. J'ai notamment une colonne qui contient les noms de produit suivit du numéro de série.
Par exemple: JAWS Std English (SN:411402). Je souhaiterais créer une macro pour copier le numéro de série (ici 411402) de chaque ligne et le déplacer dans une colonne différente (de la colonne H à O).
J'ai un peu lu comment fonctionnait les macros mais j'ignore comment copier seulement le numéro de série.
Merci d'avance pour votre aide.
Je suis en train de travaillé sur excel avec une liste de donnée. J'ai notamment une colonne qui contient les noms de produit suivit du numéro de série.
Par exemple: JAWS Std English (SN:411402). Je souhaiterais créer une macro pour copier le numéro de série (ici 411402) de chaque ligne et le déplacer dans une colonne différente (de la colonne H à O).
J'ai un peu lu comment fonctionnait les macros mais j'ignore comment copier seulement le numéro de série.
Merci d'avance pour votre aide.
A voir également:
- Sélectionner numéro de série dans excel
- Numero prive - Guide
- Liste déroulante excel - Guide
- Numéro père noël whatsapp - Accueil - Messagerie instantanée
- Word et excel gratuit - Guide
- Numéro de téléphone excel 0 - Guide
7 réponses
Bonjour,
Essai cette formule dans VBA et ça devrait marcher!
J'ai considéré le nom du produit dans la cellule A1 et je met le résultat dans la cellule B1
Change ce que tu as besoin ;)
Tiens nous au courant
PS : Ma formule marche peux importe le nombre de paranthèse dans ton nom de produit tant qu'il y a marqué "(SN"
Par contre il faut que ceci soit à la fin de ton produit sinon ça marche pas! mais je peux modifier si nécessaire
Essai cette formule dans VBA et ça devrait marcher!
Public Sub test() Cells(1, 2) = Mid(Cells(1, 1), InStr(Cells(1, 1), "(SN:") + 4, Len(Cells(1, 1)) - (InStr(Cells(1, 1), "(SN:") + 4)) End Sub
J'ai considéré le nom du produit dans la cellule A1 et je met le résultat dans la cellule B1
Change ce que tu as besoin ;)
Tiens nous au courant
PS : Ma formule marche peux importe le nombre de paranthèse dans ton nom de produit tant qu'il y a marqué "(SN"
Par contre il faut que ceci soit à la fin de ton produit sinon ça marche pas! mais je peux modifier si nécessaire
Pourquoi passer par une macro ?
Tu clique sur ta case de destination et tu fait inserer une fonction.
Tu recherche "droite" Tu cliques sur ta case de départ.
Puis ";" et le nombre de caractères à supprimer
le numéro va appraitre sans le "SN:"
Tu clique sur ta case de destination et tu fait inserer une fonction.
Tu recherche "droite" Tu cliques sur ta case de départ.
Puis ";" et le nombre de caractères à supprimer
le numéro va appraitre sans le "SN:"
Bonjour,
comme dit atok : pourquoi une macro ?
=STXT(A1;4;50)
(valable pour 50 caractères max sur la référence)
à recopier vers le bas.
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
comme dit atok : pourquoi une macro ?
=STXT(A1;4;50)
(valable pour 50 caractères max sur la référence)
à recopier vers le bas.
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Merci pour votre aide.
Voici à quoi ressemble le fichier excel, ca sera plus facile pour se comprend.
https://www.cjoint.com/?BHlk4OBl1UX
Je suis obligé de créer une macro (enfin je pense) car les noms de produit change en fonctions des lignes.
J'ai essayé cette macro (pour les 10 premières lignes) mais ca ne fonctionne pas
Sub test()
For nombre = 1 To 10
If Cells(nombre, 5) = "Invoice" Then
If Cells(nombre, 8) Like "*SN*" Then
Cells(nombre, 15) = Mid(Cells(nombre, 8), InStr(Cells(nombre, 8), "(SN:") + 4, Len(Cells(nombre, 8)) - (InStr(Cells(nombre, 8), "(SN:") + 4))
End If
End If
Next nombre
End Sub
Merci encore
Voici à quoi ressemble le fichier excel, ca sera plus facile pour se comprend.
https://www.cjoint.com/?BHlk4OBl1UX
Je suis obligé de créer une macro (enfin je pense) car les noms de produit change en fonctions des lignes.
J'ai essayé cette macro (pour les 10 premières lignes) mais ca ne fonctionne pas
Sub test()
For nombre = 1 To 10
If Cells(nombre, 5) = "Invoice" Then
If Cells(nombre, 8) Like "*SN*" Then
Cells(nombre, 15) = Mid(Cells(nombre, 8), InStr(Cells(nombre, 8), "(SN:") + 4, Len(Cells(nombre, 8)) - (InStr(Cells(nombre, 8), "(SN:") + 4))
End If
End If
Next nombre
End Sub
Merci encore
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je ne suis pas obligé d'avoir une macro qui marche pour toute les lignes (par exemple si sn n'est pas en majuscule ce n'est pas grave si ca ne marche pas). Je peux finir manuellement si y a quelques lignes à faire après
Re,
=STXT(STXT(SUBSTITUE(SUBSTITUE(A1;"#";":");")";" ");CHERCHE("sn:";A1)+3;200)&" ";1;CHERCHE(" ";STXT(SUBSTITUE(SUBSTITUE(A1;"#";":");")";" ");CHERCHE("sn:";A1)+3;200)&" ")-1)
devrait t'en faire pas mal.
Les #SN9999 ne sont pas fait, ça serait alourdir la formule pour peu de cas. A la limite fait un remplacer #SN par SN: avant.
La prochaine fois post un fichier excel, je n'arrive pas à mettre de formule sur une image moi...
eric
Edit: je n'avais pas vu que #sn était suivi d'un espace.
Mieux vaut faire avec une colonne intermédiaire pour alléger la formule :
- en B1: =SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;"sn# ";"sn:");")";" ");"#sn";"sn:")&" "
- en C1: =STXT(STXT(B1;CHERCHE("sn:";B1);200);4;CHERCHE(" ";STXT(B1;CHERCHE("sn:";B1);200))-4)
Du coup je t'ai ajouté les #sn.
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
=STXT(STXT(SUBSTITUE(SUBSTITUE(A1;"#";":");")";" ");CHERCHE("sn:";A1)+3;200)&" ";1;CHERCHE(" ";STXT(SUBSTITUE(SUBSTITUE(A1;"#";":");")";" ");CHERCHE("sn:";A1)+3;200)&" ")-1)
devrait t'en faire pas mal.
Les #SN9999 ne sont pas fait, ça serait alourdir la formule pour peu de cas. A la limite fait un remplacer #SN par SN: avant.
La prochaine fois post un fichier excel, je n'arrive pas à mettre de formule sur une image moi...
eric
Edit: je n'avais pas vu que #sn était suivi d'un espace.
Mieux vaut faire avec une colonne intermédiaire pour alléger la formule :
- en B1: =SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;"sn# ";"sn:");")";" ");"#sn";"sn:")&" "
- en C1: =STXT(STXT(B1;CHERCHE("sn:";B1);200);4;CHERCHE(" ";STXT(B1;CHERCHE("sn:";B1);200))-4)
Du coup je t'ai ajouté les #sn.
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.