VBA Range et Variable

Résolu
Bonjour,
j'ai un petit souci dans une macro j'ai une plage de selectionné comme ceci : Range("A8:R8,A5:R5").Select

en sachant que la valeur 8 contenu dans A8:R8 peut changer j'ai cette valeur dans la cellule F3, mais je n'y arrive pas, a l'aide si quelqu'un peu m'aider. j'ai beau regarder partout essayer des bout de code, rien de rien

Merci.
Configuration: Windows XP Internet Explorer 6.0

5 réponses

  1. Bonjour,

    Essaie avec ça:

    Dim lig As Long
    
    lig = Clng(Range("F3").Value)
    
    Range("A" & lig & ":R" & lig & ",A5:R5").Select 

    ;o)
    1
    1. Merci beaucoup Polux 31, cela fonctionne toutefois il me reste une derniere question, j'ai quasiment le même probleme dans une autre cellule :

      ActiveChart.PivotLayout.PivotTable.PivotFields("Client").CurrentPage = _
      ("nom1")

      nom1 correspond cette fois a un nom variable qui se trouve en D3. je me suis inspiré de ton code mais je pense que cela differe du fait que ce n'est plus numerique...

      A tu une idée? en tout les cas merci encore de m'avoir aidé.

      Cordialement.
      0
      1. Tu veux dire que la cellule D3 contient une chaine de caractères et non une valeur numérique ?

        Si c'est le cas il faut juste faire:

        ActiveChart.PivotLayout.PivotTable.PivotFields("Client").CurrentPage = _
        CStr(Range("D3").Value)

        La fonction CStr() convertit la variable en chaîne de caractère. Par exemple, si D3 contient un code postal : 02150

        cp = Range("D3").Value
        
        cp = 2150


        Ou

        cp = CStr(Range("D3").Value)
        
        cp = "02150" 


        ;o)
        0
        1. Merci beaucoup polux 31 , tu est trop fort !!! lol
          0
          1. Ben non, pas trop fort ... juste que je sais comment faire.

            ;o)
            0
            1. Bonjour Polux31,

              Une question dans le même sujet STP :
              Si j'ai :
              l1=1
              c2=40
              l2=1
              c2=500

              et que au contraire je veux que :
              l1= Évolue chaque mois
              c2=Évolue chaque mois
              l2=Évolue chaque mois
              c2=Évolue chaque mois

              Comment peut on faire sans obliger l'utilisateur à renseigner un inputBox ?
              0