excel, comment ne choisir que x chiffres ?

Discussion dans 'Windows' créé par Noir, 17 Janvier 2008.

Statut de la discussion:
Fermée.
  1. Offline
    Noir Never forget who i am !
    salut à tous et à toutes,

    me voici au bureau et j'ai besoin d'un petit service qui me faciliterais la tâche. Je vous explique. J'ai un tableau excel et j'ai une colonne de 11 chiffres. Sur celle-ci je ne dois selectionner que les 6 premiers pour les replacer dans une autre colonne.

    Est-ce qu'il existe un moyen rapide et simple au lieu de copier coller à chaque fois en selectionnant le début des chiffres pour me permettre de gagner du temps et surtout éviter de me niquer les yeux à force de compter si j'ai bien les 6 premiers et non 7.

    Un grand merci d'avance.

    ++
    Noir, 17 Janvier 2008
    #1
  2. Offline
    AcidBird Touriste
    Je ne suis pas un expert mais tu devrais pouvoir faire une macro assez facilement me semble ...
    AcidBird, 17 Janvier 2008
    #2
  3. Offline
    null ose();
    Tu peux faire une division entière car "12345678900" DIV "100000" = "123456".

    Je viens de regarder, si tu mets "100000" dans une cellule, tu peux utiliser :

    Si tu ne veux pas faire une cellule dédiée pour 100000, tu peux le faire via :

    null, 17 Janvier 2008
    #3
  4. Offline
    Bartdude Touriste
    Je comprends pas bien la question..

    t'as des chiffres en A1, A2, A3, ... , A11 , et tu veux copier les chiffres de A1 à A6 dans les colonnes B1 à B6, C1 à C6, etc ??? c ca ?
    Bartdude, 17 Janvier 2008
    #4
  5. Offline
    Technopere ex membre
    heu wé la question est étrange,

    c'est quoi ta répétition : entre différent fichier ? entre différente collone d'une même tables, ou entre tables différentes d'un même fichier ?
    Technopere, 17 Janvier 2008
    #5
  6. Offline
    Noir Never forget who i am !
    Je veux copier tous les codes de la colonne A dans la colonne F mais dans cette même colonne F, je ne veux que les 6 premiers chiffre de la colonne A.


    exemple : 12345678910 -> 123456

    Est-ce la méthode de null qui est la bonne ou est-ce une autre ?

    Sincèrement ça m'aiderait grandement car sur une liste de 30 000 fichiers, ça risque d'être long >_<

    Merci.
    Noir, 17 Janvier 2008
    #6
  7. Offline
    Technopere ex membre
    j'aurais fait la même chose que null aussi :)
    Technopere, 17 Janvier 2008
    #7
  8. Offline
    Noir Never forget who i am !
    eu... quelqu'un pourrait-il me la méthode à faire de A à Z si possible car moi et excel nous ne somme pas copain... Je connais les bases mais sans plus.

    Merci d'avance :oops:

    ps: Petite précision, je suis sous excel 2003
    Noir, 17 Janvier 2008
    #8
  9. Offline
    eSb` That's Poker!
    Tu te mets sur la cellule de destination et tu tapes dedans :
    =TRONQUE(A1/100000)

    Où A1 est la première cellule concernée. (donc à changer)
    Ensuite, le classique "tirer vers le bas" qui va répéter la formule.
    eSb`, 17 Janvier 2008
    #9
  10. Offline
    EINST Elite
    J'aurais fait exactement comme null mais je viens de jeter un coup d'oeil dans excel, il se fait qu'il existe une fonction pour ça (et ça marche pas seulement avec les chiffres mais avec tout caractère).
    Une méthode + générale qui ne tient donc pas compte du nombre de chiffres de ton nombre de départ.

    STxt renvoie un nombre donné de caractères extraits d'une chaîne de texte à partir de la position que vous avez spécifiée.
    Code:
     STXT(cellule; départ; nombre)

    cellule : ta cellule de donnée
    départ : position de départ (dans ton cas, puisque tu veux commencer à partir du 1° chiffre, tu indiques 1)
    nombre : le nombre de chiffres (caractères) à sélectionner (donc 6)

    Donc dans ton cas :
    Code:
    =STXT(CELL;1;6)
    EINST, 17 Janvier 2008
    #10
  11. Offline
    Noir Never forget who i am !
    Alors, avec la méthode "TRONQUE", j'obtiens l'érreur suivante : #VALEUR!

    Pour la méthode de EINST, j'obtiens l'érreur : #NOM?

    Où ai-je fais l'érreur ?
    Noir, 17 Janvier 2008
    #11
  12. Offline
    DaBeast Elite
    Il doit bien y'avoir l'equivalent du substr dans les fonctions d'excel. J'ai pas tout lu, mais a mon avis la reponse sera deja donnée.
    DaBeast, 17 Janvier 2008
    #12
  13. Offline
    eSb` That's Poker!
    Pour la méthode de EINST, tu as changé CELL par la bonne cellule ? : )

    Et pour la méthode Tronque, tu n'as que des chiffres dans chaque case ?
    eSb`, 17 Janvier 2008
    #13
  14. Offline
    Noir Never forget who i am !
    j'ai essayé uniquement avec des chiffres mais il m'arrive parfois d'avoir des lettres avec.

    Mais même avec des chiffres, ça ne fonctionne pas.

    J'ai bien changé CELL par la cellule A (donc A à la place de CELL).
    Noir, 17 Janvier 2008
    #14
  15. Offline
    eSb` That's Poker!
    Il faut mettre le numéro de la cellule aussi.
    Tu dois te placer dans une cellule quelconque dans laquelle tu veux copier la première donnée et taper :
    =STXT(A1;1;6)

    En supposant que tu commences à A1. Ensuite, tu "glisses/tires" vers le bas.

    Et pour les chiffres c'est bizarre, ça doit être la même raison.
    (mais ça ne fonctionnera pas comme méthode si il y a des lettres, on ne sait diviser un mot ; ))
    eSb`, 17 Janvier 2008
    #15
  16. Offline
    EINST Elite
    Yep, substr ( string string, int start , int length) en php est exactement pareil à stxt sur excel.

    [IMG]

    (un dessin vaut parfois mieux qu'un long discours)

    J'ai rajouté un truc à la fonction stxt au cas où tu dois faire des opérations (addition, ...) sur ces nombres mais c'est pas forcément nécessaire.
    Dans tronque, pour la division, au lieu de taper 100000, tu peux taper 1E5.
    Tu ne dois taper la formule qu'une seule fois, puis tirer vers le bas pour la dupliquer (ou bien, tu fais copier, tu sélectionnes toutes les cases et tu colles), excel se chargera de changer ce qu'il faut dans la formule.


    Note supplémentaire : si Excel est en anglais, il faut utiliser MID au lieu de STXT
    EINST, 17 Janvier 2008
    #16
  17. Offline
    Noir Never forget who i am !
    merci beaucoup pour votre aide, je vais regarder à ça demain à mon avis, me reste encore 1h à tirer.

    Si vous avez d'autres solutions (sait-on jamais), n'hésitez pas à répondre à ce sujet.

    Merci.
    Noir, 17 Janvier 2008
    #17
  18. Offline
    Bartdude Touriste
    En fait je dirais que le copiage de ces 6 champs, c'est pas encore ca qui prend du temps... ton plus gros problème apparament, c'est que t'as 30 000 fichiers à gérer, et bon tu vas quand-même devoir copier/coller 30 000 fois la formule.

    L'idéal serait un ptit programme qui va ouvrir le fichier (ou de préférence tous les fichiers d'un dossier donné) et faire la même chose sur chacun.
    J'aurais bien voulu t'aider plus, d'autant qu'à priori ca doit être tout petit comme programme, mais je n'ai jamais fait de programmation Windows/office donc ca va être un peu chaud. Par contre je suis certain que sur un tel nombre de fichiers, c'est de loin la solution la plus rapide...
    Bartdude, 17 Janvier 2008
    #18
  19. Offline
    Noir Never forget who i am !
    non je me suis trompé, c'est pas 30 000 fichiers mais bien 30 000 champs de code à copier d'une colonne à une autre (et parfois plus de 30 000).
    Noir, 17 Janvier 2008
    #19
  20. Offline
    Noir Never forget who i am !
    Génial, ça fonctionne !! (je viens de tester chez moi sous excel 2007, plus au calme et tranquille).

    Un grand merci, maintenant pour ceux qui comporte des numeros et des lettres, ça risque d'être une autre affaire.
    Noir, 17 Janvier 2008
    #20
Statut de la discussion:
Fermée.