Format numéro vba

Résolu
Bonjour,

Je cherche à réécrire ce code :

' Mettre en numero telephone
' Range("L11:O11").Select
' Selection.NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"

' Range("Q11:AH11").Select
' Selection.NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"

Je mets ça, mais c'est faux et je n'arrive pas à trouver.

With Worksheets(I).Select

Selection.Range("L11:O11").Selection.NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
Selection.Range("Q11:AH11").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"

End With

Merci pour votre aide.

Pascal

5 réponses

  1. Bonjour Michel, ccm81,

    Bon je n'ai pas réussi à mettre ce code, j'ai gardé l'ancien.

    Merci pour votre aide.

    Bonne journée.

    Pascal
    1. Bonjour

      > With Worksheets(I)
      que vaut la variable I :le nom de la feuille, son numéro ?
      si c'est la feuille 1 qu'il faut traiter (comme dans l'exemple de michel que je salue au passage) ceci devrait fonctionner, sinon tu remplaces 1 par ta variable I

      With Worksheets(1)
        .Range("L11:O11").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
        .Range("Q11:AH11").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
        .Range("L7:AH9").NumberFormat = "@"
        .Range("K10:AH10").NumberFormat = "@"
        .Range("L12:AH12").NumberFormat = "@"
        .Range("M13:AH13").NumberFormat = "@"
      End With


      Cdlmt
      1. j'ai essayé comme cela et cela ne fonctionne pas ?

        With Worksheets(I)
        .Range("L11:O11").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
        End With

        With Worksheets(I)
        .Range("Q11:AH11").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
        End With

        With Worksheets(I)
        .Range("L7:AH9").NumberFormat = "@"
        End With

        With Worksheets(I)
        .Range("K10:AH10").NumberFormat = "@"
        End With

        With Worksheets(I)
        .Range("L12:AH12").NumberFormat = "@"
        End With

        With Worksheets(I)
        .Range("M13:AH13").NumberFormat = "@"
        End With
        1. Bonjour Michel,

          Ok merci, mais j'ai mis ça et cela fait que le 1er code, je dois écrire une ligne pour chaque ?

          With Worksheets(I)

          Range("L11:O11").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
          Range("Q11:AH11").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
          Range("L7:AH9").NumberFormat = "@"
          Range("K10:AH10").NumberFormat = "@"
          Range("L12:AH12").NumberFormat = "@"
          Range("M13:AH13").NumberFormat = "@"
          End With
          1. Contributeur
            on pourrait faire 2 grouoes mais pour 2 et 4 lignes ,ça ne vaut peut-^tre pas le coup

            n'oublie surtout pas de mettre le point devant les range
        2. Contributeur
          Bonjour
          With Worksheets(1)
          .Range("L11:O11").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
          End With