Sélectionner numéro de série dans excel

Résolu
rona01 Messages postés 5 Statut Membre -  
rona01 Messages postés 5 Statut Membre -
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.

7 réponses

  1. Submin Messages postés 463 Statut Membre 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
  2. Atok91 Messages postés 46 Statut Membre 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
  3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    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
  4. rona01 Messages postés 5 Statut Membre
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. rona01 Messages postés 5 Statut Membre
     
    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
  7. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    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
  8. rona01 Messages postés 5 Statut Membre
     
    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
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      ok, je met en résolu pour toi.
      eric
      0
    2. rona01 Messages postés 5 Statut Membre
       
      d'accord merci
      0