Erreur de type 13

Résolu
CECILEB79 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je débute en vba et je ne comprends pas pourquoi j'ai une erreur d'execution 13 : incompatibilité de type... Je mets en gras la ligne où il y a l'erreur :

Option Explicit

'Déclaration des variables'
Dim i As Integer, j As Integer
Dim onglet As Variant
Dim DerniereLigne As Integer
Dim LastRowConsolidation As Integer
'Procédure permettant d'effacer toutes les données de la feuille RECAP'

Sub EffaceDonnees()

    Worksheets("RECAP").Select
    Rows("10:1000000").Select
    Selection.Clear
    Range("A2").Select
 
End Sub

'Procédure permettant la consolidation des feuilles'

Sub Consolider()

    Application.ScreenUpdating = False
    EffaceDonnees
    
    'Boucle permettant de lire toutes les feuilles à consolider'
    For j = 1 To 7 'Parcours les feuilles de chaque communauté'
        onglet = Choose(j, "Accompagnateurs", "Eclaireurs", "Facilitateurs", "Experienceurs", "Transformateurs")
        <bold>Sheets(onglet).Select</bold>
        DerniereLigne = Range("A1000000").End(xlUp).Row
        
        For i = 10 To DerniereLigne
            Sheets(onglet).Select
            Rows(i).Select
            Selection.Copy
            Sheets("RECAP").Select
            LastRowConsolidation = Range("A1000000").End(xlUp).Row + 1
            Cells(LastRowConsolidation, 1).Select
            ActiveSheet.Paste
            Application.CutCopyMode = False
            
        Next i
        
    Next j
    
    Application.ScreenUpdating = True
    MsgBox "La consolidation est terminée", vbOKOnly + vbInformation, "Information"

End Sub



Ce qui est bizarre c'est qu'il fait le code correctement puisque toutes lignes concernées sont copiées et collées dans la récap....

Merci par avance pour votre aide !

Message modifié par la modération
Pour une lecture plus facile du code, à l'avenir utilisez les balises, VOIR CETTE PAGE
A voir également:

3 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

c'est ecrit ici, facile..

 For j = 1 To 7 'Parcours les feuilles de chaque communauté'
        onglet = Choose(j, "Accompagnateurs", "Eclaireurs", "Facilitateurs", "Experienceurs", "Transformateurs")
    
1
CECILEB79 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
C'était logique effectivement.... Merci beaucoup en tout cas !
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour à tous les deux

Pour aller un peu plus loin que notre ami f894009, tu n'as que 5 valeurs dans ta liste des noms d'onglets et j va de 1 à 7, donc à partir de j = 6 ....

Cdlmnt
1
CECILEB79 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
J'aurai du le voir.... Effectivement j'ai supprimé des onglets sans changer cette variable... J'ai bcp à apprendre encore ! merci encore en tout cas !
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
De rien

Si c'est fini, peux tu mettre le sujet à résolu (en haut dans ton premier message)

Bonne journée
0