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 :

Erreur: L'indice n'appartient pas à la séléction [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de yoyo3d
    Homme Profil pro
    Administratif
    Inscrit en
    Avril 2002
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Administratif
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2002
    Messages : 422
    Par défaut Erreur: L'indice n'appartient pas à la séléction
    Salut à tous,
    Une fois de plus je me tourne vers vous à cause d'un p'tit probleme de code.
    Je vais essayer de faire simple…

    J'ai une feuille excel dans laquelle, j'ai saisi des relevés météo (en ligne) et chaque relevé contient plusieurs valeurs (en colonne): date, n° de zone , % d'hygro, température….

    J'ai une deuxieme feuille qui contient la liste des Feux de foret du département avec la date, la commune la surface brûlée etc, et sur chaque ligne feux de foret je veux récupérer la météo correspondante pour la coller à la suite des donnée FdF.

    Ma boucle principale (simplifiée) correspond à ça:
    - Pour chaque ligne FdF
    -Si j'ai déjà une météo de saisie, je passe à la ligne suivante
    -Sinon je vais chercher la météo correspondante dans ma feuille météo

    Et c'est là que ça merdouille…, je pensais avoir bien défini mes variables, mes zones de données à tester, etc mais en éxécution pas à pas, lorsque j'arrive à la ligne 76 (lignes en rouge dans le code), j'ai le méssage d'erreur:

    "L'indice n'appartient pas à la séléction", je comprend bien que j'ai probablement mal initialisé ma zone de recherche "Liste_Météo_griffon" mais

    je ne vois pas pourquoi,
    Le code n'est pas long, je vous le met en entier, j'ai essayer de le commenté au mieux, mais bon…

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    Sub FdF()
    '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    With Sheets("Liste des FdF")
    
        Dim Nb_FdF As Integer 'nbr de feux
        Nb_FdF = .Range("C150").End(xlUp).Row - 3
    
        Dim Compt As Integer  'compteur pour la boucles des FdF
        Compt = 4
    
        Dim Derniere_Ligne_FdF As Integer 'N° de la derniere ligne FdF y compris les incomplets
        Derniere_Ligne_FdF = .Range("C150").End(xlUp).Row
    
        Dim List_FdF As Range 'range contenant un FdF de renseigné de B4 à B& Derniere_ligne_FdF
        Set List_FdF = .Range(.Cells(4, 2), .Cells(Derniere_Ligne_FdF, 2))
    
        Dim Météo_FdF As Range    'Range de W4 à W& Derniere_ligne_FdF
        Set Météo_FdF = .Range(.Cells(4, 23), .Cells(Derniere_Ligne_FdF, 23))
    
    End With
    
    ' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    With Sheets("Param2")
    
        Dim Tableau_Zone_Griffon As Range 'Tableau de liaison Commune -> N°_Zone_Griffon
        Set Tableau_Zone_Griffon = .Range("V3:X473")
    
    End With
    
    '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    With Sheets("Météo griffon")
    
        Dim Derniere_Ligne_Météo_Griffon As Integer 'derniere météo Griffon
        Derniere_Ligne_Météo_Griffon = .Range("C65536").End(xlUp).Row
    
        Dim Tableau_Météo_Griffon As Range ' tableau contenant toute les météo Griffon
        Set Tableau_Météo_Griffon = Range(.Cells(2, 3), .Cells(Derniere_Ligne_Météo_Griffon, 17))
    
        Dim Liste_Météo_griffon As Range
        Set Liste_Météo_griffon = Range(.Cells(2, 3), .Cells(Derniere_Ligne_Météo_Griffon, 3))
    
    End With
    
    '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    'Boucle: Verification si météo griffon saisie ou pas pour chaque FdF
    
    Dim Test_FdF As Range     'chaque cellule contenu dans la zone "List_FdF"
    Dim Test_Griffon As Range 'Chaque cellule contenu dans la zone "List_Météo_Griffon"
    Dim Commune_FdF As String 'Commune du FdF
    Dim Date_FdF As Date      'Date du FdF
    Dim N°_Zone_FdF As Integer     'N° de zone "griffon" de la "Commune_FdF"
    
    Dim Date_Griffon As Date  'date météo griffon
    Dim N°_Zone_Griffon As Integer 'N° de zone "griffon" dans "MétéoGriffon"
    Dim Données_Griffon As Range   'Range à copier (en W& Compt)
    Dim Compt_Griffon As Integer
    Compt_Griffon = 2
    
    For Each Test_FdF In Météo_FdF
    
        If Test_FdF.Value = "" Then
        
            'si la cellule "Test_cellule_météo" est vide:
            
            Commune_FdF = Sheets("Liste des FdF").Range("G" & Compt).Value
            Date_FdF = Sheets("Liste des FdF").Range("C" & Compt).Value        N°_Zone_FdF = Application.WorksheetFunction.VLookup(Commune_FdF, Tableau_Zone_Griffon, 3)
            Sheets("Liste des FdF").Range("AL" & Compt).Value = N°_Zone_FdF 'affichage pour verif
            
            For Each Test_Griffon In Liste_Météo_griffon
                
                Date_Griffon = Sheets("Météo_griffon").Range("D" & Compt_Griffon).Value
                N°_Zone_Griffon = Sheets("Météo_griffon").Range("C" & Compt_Griffon).Value            
                If Date_Griffon = Date_FdF And N°_Zone_Griffon = N°_Zone_FdF Then
                ' recherche et selection des données griffon à Coller sur chaque FdF
                Donnée_Griffon = Sheets("Météo_griffon").Range(Cells(5, Compt_Griffon), Cells(17, Compt_Griffon))
                
                End If
                
            Compt_Griffon = Compt_Griffon + 1
    
            Next Test_Griffon
            
        Else
        
            'Sinon:
            'Cette parti du code sera supprimée car si la météo est renseignée,
            'inutile de faire la recherche...
            Commune_FdF = Sheets("Liste des FdF").Range("G" & Compt).Value
            Date_FdF = Sheets("Liste des FdF").Range("C" & Compt).Value
            N°_Zone_FdF = Application.WorksheetFunction.VLookup(Commune_FdF, Tableau_Zone_Griffon, 3)
            Sheets("Liste des FdF").Range("AL" & Compt).Value = N°_Zone_FdF 'affichage pour verif
           
        End If
        
    Compt = Compt + 1
    
    Next Test_FdF
    '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    
    End Sub
    merci encore pour votre aide..

  2. #2
    Membre éclairé
    Avatar de yoyo3d
    Homme Profil pro
    Administratif
    Inscrit en
    Avril 2002
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Administratif
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2002
    Messages : 422
    Par défaut
    bon
    j'ai trouvé mon erreur, je faisais référence à une feuille "Météo_griffon" et en fait cette feuille s'appelle "Météo griffon" ....
    j'avais pas les yeux en face des trous...

    désolé pour le dérangement...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Erreur : L'indice n'appartient pas à la sélection
    Par Nayko dans le forum VBA Access
    Réponses: 5
    Dernier message: 04/04/2014, 12h23
  2. [XL-2003] Erreur 9 indice n'appartient pas à la sélection
    Par tioch dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/07/2011, 17h39
  3. Erreur: l'indice n'appartient pas à la sélection!
    Par argaz01 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 29/06/2010, 09h23
  4. Erreur 9 indice n'appartient pas à la sélection
    Par alpilon dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/11/2009, 20h14
  5. [VBA-E] L'indice n'appartient pas à la séléction.
    Par DevStage dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/02/2007, 18h43

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