Erreur d'execution 9, l'indice n'appartient pas à la sélection

Résolu
papish_4732 -  
 papish_4732 -
Bonjour, quelqu'un pourrait-il m'aider sur cette erreur
Voila le programme :

Sub recherchev()
Dim maplage As Range
Dim i As Long
i = 2
Set maplage = Workbooks("Type actes.xls").Sheets("Feuil1").Range("A:B")
Do While Cells(i, 2) <> ""
Cells(i, 57) = Application.VLookup(Cells(i, 3).Value, maplage, 2, False)
i = i + 1
Loop
End Sub

3 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour,
    à quelle ligne as-tu l'erreur?
    le plus souvent, c'est parce que tu donnes un nom incorrect dans Workbooks ou dans Sheets.
    tu peux aussi découper les longues instructions pour arriver à déterminer plus précisément où est l'erreur.
    0
    1. papish_4732
       
      Bonjour ,
      l'erreur se trouve au niveau de cette ligne: Set maplage = Workbooks("Type actes.xls").Sheets("Feuil1").Range("A:B")
      Merci cordialement !
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > papish_4732
         
        le plus souvent, c'est parce que tu donnes un nom incorrect dans Workbooks ou dans Sheets.
        tu peux aussi découper les longues instructions pour arriver à déterminer plus précisément où est l'erreur.
        dim wb as workbook, fl as worksheet
        Set wb = Workbooks("Type actes.xls")
        Set fl = wb.Sheets("Feuil1")
        Set maplage = fl.Range("A:B")
        0
  2. papish_4732
     
    Merci vraiment l'erreur se situait au niveau du nom du classeur c'était "Types actes.xlsx".

    Mais il y a toujours une erreur cette fois ci au niveau de la ligne 8 : Workbooks("Sinistres_par_actes_052021.xlsm").Sheets("LSENEGAL_SGPCPSI").Cells(i, 2) <> " "

    Erreur définie par l'application ou par l'objet

    Sub recherchev()
    Dim i As Double
    Dim wb As Workbook, fl As Worksheet
    Set wb = Workbooks("Type actes.xlsx")
    Set fl = wb.Sheets("Feuil1")
    Set maplage = fl.Range("A:B")
    Do While Workbooks("Sinistres_par_actes_052021.xlsm").Sheets("LSENEGAL_SGPCPSI").Cells(i, 2) <> " "
    Cells(i, 57) = Application.VLookup(Cells(i, 3).Value, maplage, 2, False)
    i = i + 1
    Loop
    End Sub

    Merci cordialement !
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      je pense préférable de déclarer i comme
      long
      , et de lui assigner une valeur.
      0
      1. papish_4732 > yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention  
         
        Super ca marche merci bien ca fait la recherche entre les deux classeurs !
        Bonne fin de journée !
        0
      2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > papish_4732
         
        parfait! peux-tu alors marquer la discussion comme résolue?
        0