Erreur sur macro VBA

Maxou 34

XLDnaute Nouveau
Erreur sur macro VBA (Résolu)

Bonsoir

Un ami, m'avait créer une macro qui me permettait automatiquement, d'ouvrir un classeur comprenant 12 feuilles de calcul de Janvier à Décembre, à la date du jour.

Cette macro à très bien fonctionnée pour les années 2007,2008,2009.
Depuis Janvier 2010, lorsque j'ouvre mon classeur il s'affiche une erreur :
Erreur 9 : l'indice ne correspond pas à la sélection.

Malheureusement je n'y connais rien en VBA, alors si quelqu'un est assez sympa pour me donner un coud de main ça serait super.

Le débogueur me surligne en jaune la ligne suivante :

Sheets(mois).Select 'sélectionne l'onglet correspondant au mois


Je colle dessous l'intégralité de la macro :


Private Sub Workbook_Open()
Dim moisn As Byte 'déclare la variable moisn
Dim mois As String 'déclare la variable mois
Dim cel As Range 'déclare la variable cel

moisn = Month(Date) 'définit la variable mois

'définit la variable mois en fonction de la valeur de moins
Select Case moisn
Case 1
mois = "Janvier"
Case 2
mois = "Février"
Case 3
mois = "Mars"
Case 4
mois = "Avril"
Case 5
mois = "Mai"
Case 6
mois = "Juin"
Case 7
mois = "Juillet"
Case 8
mois = "Août"
Case 9
mois = "Septembre"
Case 10
mois = "Octobre"
Case 11
mois = "Novembre"
Case 12
mois = "Décembre"
End Select

Sheets(mois).Select 'sélectionne l'onglet correspondant au mois

'boucle sur toutes les cellules de la colonne A
For Each cel In Range("A6:A" & Range("A6").End(xlDown).Row)
If DateValue(cel) = Date Then 'Condition : si la date de la cellule correspond à la date du jour
cel.Offset(0, 1).Select 'sélectionne la cellule à coté colonne B
Exit Sub 'sort de la procédure
End If 'fin de la condition
Next cel 'prochaine cellule de la boucle

End Sub



Merci d'avance.
 
Dernière édition:

Fred0o

XLDnaute Barbatruc
Re : Erreur sur macro VBA

Bonsoir Maxou, compatriote héraultais.

L'idéal aurait été d'avoir ton fameux fichier ou au moins une copie sans données confidentielles.

D'après ce que j'ai lu sur le code, rien d'anormal. Il me semble que si la macro plante, c'est qu'elle ne trouve pas la feuille nommée.

Vérifie donc que les feuilles comportent le nom défini dans ce bout de macro, notamment l'accent sur février ainsi que les majuscules :

Code:
[COLOR=#0000ff]mois = "Janvier"[/COLOR]
[COLOR=#0000ff]Case 2[/COLOR]
[COLOR=#0000ff]mois = "Février"[/COLOR]
[COLOR=#0000ff]Case 3[/COLOR]
[COLOR=#0000ff]mois = "Mars"[/COLOR]
[COLOR=#0000ff]Case 4[/COLOR]
[COLOR=#0000ff]mois = "Avril"[/COLOR]
[COLOR=#0000ff]Case 5[/COLOR]
[COLOR=#0000ff]mois = "Mai"[/COLOR]
[COLOR=#0000ff]Case 6[/COLOR]
[COLOR=#0000ff]mois = "Juin"[/COLOR]
[COLOR=#0000ff]Case 7[/COLOR]
[COLOR=#0000ff]mois = "Juillet"[/COLOR]
[COLOR=#0000ff]Case 8[/COLOR]
[COLOR=#0000ff]mois = "Août"[/COLOR]
[COLOR=#0000ff]Case 9[/COLOR]
[COLOR=#0000ff]mois = "Septembre"[/COLOR]
[COLOR=#0000ff]Case 10[/COLOR]
[COLOR=#0000ff]mois = "Octobre"[/COLOR]
[COLOR=#0000ff]Case 11[/COLOR]
[COLOR=#0000ff]mois = "Novembre"[/COLOR]
[COLOR=#0000ff]Case 12[/COLOR]
[COLOR=#0000ff]mois = "Décembre"[/COLOR]

Tiens nous au courant.
 

Discussions similaires

Statistiques des forums

Discussions
312 305
Messages
2 087 077
Membres
103 455
dernier inscrit
saramachado