IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

liste indirecte dans une boucle VBA


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau candidat au Club
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 2
    Par défaut liste indirecte dans une boucle VBA
    Bonjour à tous,

    Je voudrais faire une macro VBA dans laquelle on crée sur un grand nombre de lignes, toujours la même chose:
    - dans la colonne F, une liste simple (un menu déroulant dont les valeurs sont dans une plage nommée)
    - dans la colonne G, une liste en cascade ou indirecte de la première (la liste dépend du choix dans la case F de la même ligne).

    Pour créer la liste simple, je ne rencontre pas de pb. J'utilise ce genre de code et ça marche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Set MALISTE1= Sheets("Listes").Range("A1:A8")
    Set MALISTE2= Sheets("Listes").Range("B1:B2")
    Set MALISTE3= Sheets("Listes").Range("C1")
    Set PRINCIPALE= Sheets("Listes").Range("E1:E3")
    ...
    For ligne = 2 To LastRow
    ...
        Cells(ligne, 6).Select
        With Selection.Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:="=PRINCIPALE"
            .IgnoreBlank = True
            .InCellDropdown = True
            .ShowInput = True
            .ShowError = True
        End With
    ...
    Next
    Mais impossible de faire fonctionner un code pour créer en plus les listes indirectes. Je n'arrive pas à traduire dans VBA, dans ma boucle, ce genre de formule (qui marche bien sous Excel) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI($F2=""; $AA$50;INDIRECT($F2)).


    Merci de votre aide

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Dim Adr As String
    '....
    With Worksheets("Feuil2")                          'A adapter
        For Ligne = 2 To LastRow
            With .Cells(Ligne, 6).Validation
                .Delete
                Adr = "E" & Ligne                      'à adapter en fonction de la colonne
                .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
                     xlBetween, Formula1:="=IF(" & Adr & "="""",$A$2,INDIRECT(" & Adr & "))"
                .IgnoreBlank = True
                .InCellDropdown = True
                .ShowInput = True
                .ShowError = True
            End With
        Next Ligne
    End With

  3. #3
    Nouveau candidat au Club
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 2
    Par défaut
    merci bien mercatog !
    j'essaie ca au boulot lundi (ici, je suis sur linux...)

Discussions similaires

  1. [2.x] [Twitter Bootstrap]Liste accordéon dans une boucle
    Par Ownview dans le forum Symfony
    Réponses: 13
    Dernier message: 05/07/2013, 17h08
  2. Insertion Formule dans une Boucle VBA (bloomberg)
    Par Stufa789 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 08/04/2011, 00h45
  3. [XL-2003] faire une boucle dans une boucle VBA
    Par the-geut dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/04/2010, 15h06
  4. [VBA-E] checkbox dans une boucle
    Par richou dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 10/05/2006, 14h59
  5. [VBA-E] QueryTables dans une boucle
    Par canorra dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/05/2006, 19h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo