[Excel] Erreur d'objet incompréhensible

Résolu
deniooo Messages postés 36 Statut Membre -  
deniooo Messages postés 36 Statut Membre -
Bonjour,
Voilà j'ai cette erreur :

Erreur d'execution '438'
"Propriété ou méthode non gérée par cette objet"

à ce point de mon code (simple au demeurant) :

nom = ActiveWorkbook.Name
Set plage = Application.Workbook(nom).Worksheets("Feuil1").UsedRange.Columns(colonne).cells

La variable colonne est renvoyée par une inbox.

Je ne comprends pas d'où celà peut venir..
la suite du code où plage est utilisée :

For Each cel In plage
i = i + 1
If (cells(i, numCol).Value <> "") Then
n = n + 1
cells(i, numCol).Value = ""
ListeMOE (cells(i, numCol))
End If
Next

Je ne vois pas l'erreur de type d'objets.. Quelqu'un peut m'éclairer?!
A voir également:

1 réponse

LePierre Messages postés 249 Statut Membre 338
 
bonjour

mets un s à "...Workbooks(nom)..."

à plus
-1
deniooo Messages postés 36 Statut Membre 1
 
Huhuhuhu merci !
et maintenant.. Erreur 9 : "l'indice n'appartient pas à la sélection"

une idée ?

(je met tout le bout de code concerné :

Sub Testing()
parcoursColonnes ("A")

End Sub

Function parcoursColonnes(ByVal colonne As String)

Dim plage As Range
Dim cel As Range
Dim n As Long
i = 2

numCol = Columns(colonne).Column
nom = ActiveWorkbook.Name

Set plage = Application.Workbooks(nom).Worksheets("Feuil1").UsedRange.Columns("A").cells
n = 0

For Each cel In plage
i = i + 1
If (cells(i, numCol).Value <> "") Then
n = n + 1
cells(i, numCol).Value = ""
ListeMOE (cells(i, numCol))
End If
Next
parcoursColonnes = i

End Function

Function ListeMOE(ByVal cel As Range)
listeval = "DSI, RES, DSI&RES, BULL, DSI&BULL, Diginext, Autre"
cel.Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=listeval

End With
End Function
)
-1
deniooo Messages postés 36 Statut Membre 1 > deniooo Messages postés 36 Statut Membre
 
Set plage = Application.Workbooks(nom).Worksheets("Feuil1").UsedRange.Columns("A")­.cells

transformation en :

Set plage = Application.Workbooks(nom).Sheets(1).UsedRange.Columns("A")­.cells

Probléme résolu !
-1