Créer numéro à partir de cellule existante

Résolu
PinkS13 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

J'ai créé un formulaire à remplir qui va entrer les données dans un chiffrier excel.
Je dois à partir des données de chaque colonne prendre chacune d'entre elle afin de créer un numéro.
Je m'explique

Colonne A: Département (3 lettres) ex: SSE
Colonne B: Type (3 lettres) ex: DEV
Colonne C: Titre (variable) ex: Formulaire xxx
Colonne F: Révision (2 chiffres) ex: 01
Colonne H: Division (2 Chiffres) ex: 04
Colonne I: Item (2 chiffres) ex: 00
Colonne J: Déterminant (2 chiffres): ex:25
Colonne L: numéro implémenté (3 chiffres): ex 005

Ensuite je créé un no de document dans la colonne E qui consiste aux informations suivantes:
Colonne A-colonne B - Colonne H-Colonne I-ColonneJ-Colonne F-Colonne L- Colonne C
exemple: SSE-DEV-04-00-25-01-005-Formulaire xxx

Mon problème est que :
1- Quand mon numéro se crée dans la colonne E, les 0 disparaisse. Pourtant dans les colonnes respectives où je prends les informations, je les vois : colonne I indique 00 mais dans la colonne E, je ne vois plus que 0.
2- Quand je crée mon numéro colonne E, les colonne H-I et J ajoute un espace avant le chiffre.

Tout le reste fonctionne c'est seulement le final qui ne fonctionne pas.

C'est difficile a expliquer, je ne sais pas si je suis claire pour que quelqu'un puisse m'aider

Voici la partie de code

no = Sheets("feuil1").Range("h" & dlt).Value & "-" & Sheets("feuil1").Range("i" & dlt).Value & "-" & Sheets("feuil1").Range("j" & dlt).Value
Sheets("Feuil1").Range("e" & dlt) = Sheets("feuil1").Range("a" & dlt).Value & "-" & Sheets("feuil1").Range("b" & dlt).Value & "-" & no & "-" & Sheets("feuil1").Range("f" & dlt).Value & "-" & Sheets("feuil1").Range("l" & dlt).Value & "-" & Sheets("feuil1").Range("d" & dlt).Value

1 réponse

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
     
    Bonjour,

    Pourtant dans les colonnes respectives où je prends les informations, je les vois

    Quel est le format de tes cellules ? N'aurais tu pas un format personnalisé qui fait apparaitre le "0" manquants ??

    Au pire, dans ton code, lorsque tu récupères les cellules tu peux utiliser un FORMAT
    Format(Sheets("feuil1").Range("l" & dlt).Value, "000")
    

    0
    1. PinkS13 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
       
      J'avais mis
      ActiveSheet.Columns(6).NumberFormat = "00"
      ActiveSheet.Columns(8).NumberFormat = "00"
      ActiveSheet.Columns(9).NumberFormat = "00"
      ActiveSheet.Columns(10).NumberFormat = "00"
      ActiveSheet.Columns(12).NumberFormat = "000"

      Mais ca ne semble rien changer.

      En ajoutant ce que tu as cris, ça me mets une erreur de compilation.

      Est-ce qu'il y a un moyen de joindre mon chiffrier sur ce forum.

      Je suis nouvelle et je ne sais pas comment

      Merci beaucoup
      0
    2. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832 > PinkS13 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
       
      NumberFormat

      Ceci joue sur l'affichage .... mais pas la valeur....
      Si tu entres par exemple 10 dans ta cellule... visuellement tu auras 010 ... mais la valeur n'est toujours que 10...
      Ne pas confondre le formatage de l'affichage et celui de la valeur...

      Concernant le code qui plante .... il suffirait que tu nous colles la ligne de code concernée et que tu nous indiques avec exactitude le message d'erreur rencontré....
      0
    3. PinkS13 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
       
      Le messages indique

      Erreur de compilation:
      Atendu : =

      0
    4. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
       
      ben toi tu colles une ligne de code comme ça n'importe où au pif..... et tu espères que ça marche ????

      C'est bien entendu dans ta ligne de code
      no = Sheets("feuil1").Range("h" & dlt).Value & "-" & Sheets("feuil1").Range("i" & dlt).Value & "-" & Sheets("feuil1").Range("j" & dlt).Value 
      Sheets("Feuil1").Range("e" & dlt) = Sheets("feuil1").Range("a" & dlt).Value & "-" & Sheets("feuil1").Range("b" & dlt).Value & "-" & no & "-" & Sheets("feuil1").Range("f" & dlt).Value & "-" & Sheets("feuil1").Range("l" & dlt).Value & "-" & Sheets("feuil1").Range("d" & dlt).Value
      

      qu'il faut effectuer le remplacement......
      0
    5. PinkS13 Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
       
      Je ne suis pas très connaissante en vba. J'essaye simplement du mieux que je peux.
      0