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   -
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.

A voir également:

7 réponses

Submin Messages postés 382 Date d'inscription   Statut Membre Dernière intervention   226
 
Bonjour,

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
0
Atok91 Messages postés 46 Date d'inscription   Statut Membre Dernière intervention   1
 
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:"
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
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.
0
rona01 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rona01 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
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
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
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.
0
rona01 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
Merci beaucoup! Vu la formule, cela m'aurait prit pas mal de temps à trouver.
Ca marche bien pour la plupart des cas donc ca m'aide (il y a 2000 lignes donc ca aurait été long à la main).
Merci encore!
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
ok, je met en résolu pour toi.
eric
0
rona01 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
d'accord merci
0