Erreur d'exécution '9': L'indice n'apartient pas à la selection

Bonjour,

Vous trouverez ci-dessous une macro avec des commentaires.

N'hésitez pas a me poser des questions

Sub Precious()

Dim k, n, i, t, f, so, rej, hmiss, j, m, c, p, q As Long

'Cette partie est pour recupérer des les dernières cellules vides qui m'interressent

k = Sheets("Suivi").Range("A65536").End(xlUp).Row + 1

n = Sheets("Suivi").Range("NbValeurT").Value

t = k - n

f = Sheets("Code").Range("FAVORABLE").Offset(20, 0).End(xlUp).Row - 2

so = Sheets("Code").Range("SANSOBSERVATION").Offset(20, 0).End(xlUp).Row - 2

rej = Sheets("Code").Range("REJETER").Offset(20, 0).End(xlUp).Row - 2

hmiss = Sheets("Code").Range("HORSMISSION").Offset(20, 0).End(xlUp).Row - 2

m = Application.max(f, so, rej, hmiss)

c = Sheets("RtR").Cells(1, Columns.Count).End(xlToLeft).Column

' Cette partie nous récupère tous les avis des documents par entreprise

Dim Documents()

ReDim Docuements(n, 3)

For i = 0 To n - 1

Docuements(i, 0) = Sheets("Suivi").Range("AvWARD").Offset(i + 1, 0).Value 'Avis donnés par J.WARD

Docuements(i, 1) = Sheets("Suivi").Range("AvCOB").Offset(i + 1, 0).Value 'Avis donnés par COB

Docuements(i, 2) = Sheets("Suivi").Range("AvSOCOTEC").Offset(i + 1, 0).Value 'Avis donnés par AvSOCOTEC

Docuements(i, 3) = Sheets("Suivi").Range("AvMG4").Offset(i + 1, 0).Value 'Avis donnés par Mission G4

Next i

' Toutes les codifications pour les avis Favorable

Dim Fav()

ReDim Fav(f)

For i = 0 To f - 1

Fav(i) = Sheets("Code").Range("FAVORABLE").Offset(i + 1, 0)

Next i

' Toutes les codifications pour les avis Sans observation

Dim sob()

ReDim sob(so)

For i = 0 To so - 1

sob(i) = Sheets("Code").Range("SANSOBSERVATION").Offset(i + 1, 0)

Next i

' Toutes les codifications pour les avis rejeter

Dim rejet()

ReDim rejet(rej)

For i = 0 To rej - 1

rejet(i) = Sheets("Code").Range("REJETER").Offset(i + 1, 0)

Next i

' Toutes les codifications pour les avis hors mission

Dim hm()

ReDim hm(hmiss)

For i = 0 To hmiss - 1

hm(i) = Sheets("Code").Range("HORSMISSION").Offset(i + 1, 0)

Next i

' Valeur des avis Favorables

Dim Avf()

ReDim Avf(n, 3)

'La partie qui beug et qui n'est pas finie

'Cette partie nous permet de en mettant une X dans un tableau les entreprises avec avis (Favorable ...) qu'on veut afficher(dans une autre feuille)

If Not IsEmpty(Sheets("Rqt").Range("B3:B6").Value) Then ' si une des cases de la colone JWARD et selectionné

' on nomme la colonne J.WARD

' Sheets("RtR").Cells(3, 1).Copy

' Sheets("Rqt").Cells(1, c + 1).PasteSpecial Paste:=xlPasteFormats

' Sheets("Rqt").Cells(1, c + 1).PasteSpecial Paste:=xlPasteValues

For i = 3 To 6

If Sheets("Rqt").Range("B" & i) = "X" Then ' si dans une colone de JWARD est selectionée alors

For j = 0 To n - 1

For p = 0 To f - 1

q = i - 3

If Documents(j, q) = Fav(p) Then ' pour les Avis de COB/SOCOTEC/MG4 = Favorable alors

Avf(j, q) = Documents(j, q)

Sheets("RtR").Cells(j + 2, c + 1) = Avf(j, q)

c = Sheets("RtR").Cells(1, Columns.Count).End(xlToLeft).Column

End If

Next p

Next j

End If

Next i

End If

MsgBox "Fini !"

End Sub

En vous remerciant,

Yoboys

Bonjour

Code imbuvable , car non incrémenté.

Mais surtout, un extrait de fichier nous permettra de voir où est l'erreur

Merci

Bonjour,

Avec Option Explicit en début de module, le compilateur détecte variables non déclarées (ou les erreurs dans les noms de variables).

Au lieu de déclarer presque toutes les variables en Variant, il est préférable de choisir le type ad hoc !

Bonjour,

Merci de vos réponses. L'erreur vient d'une faute de réecriture de la variable "documents". Après correction tout fonctionne.

Merci encore de vos réponses.

Cordialement,

Yoboys

Bonsoir

S'il te plaît :

Bonne soirée

Bonjour,

Merci et désolé ^^

Bonne soirée

Yoboys

Rechercher des sujets similaires à "erreur execution indice apartient pas selection"