[RESOLU] Erreur 13 lors du masquage de lignes avec macro

yannick64

XLDnaute Junior
Bonjour à tous,

Sur un fichier que j'utilise au boulot j'ai un bug lors de l'exécution d'une macro qui doit masquer certaines lignes inutiles et renommer le document. Je n'arrive pas à trouver d’où vient l'erreur peut être que l'un d'entre vous pourra m'aider...

Je précise que c'est une
erreur 13 : incompatibilité de type
provoquée par les lignes 2,3,4,5 et 6 suivant la période sélectionnée :
Code:
If Range("g8").Value = "Première période" Then Rows("62:143").EntireRow.Hidden = True
If Range("g8").Value = "Seconde période" Then Rows("45:61;74:143").EntireRow.Hidden = True
If Range("g8").Value = "Troisième période" Then Rows("45:73;86:143").EntireRow.Hidden = True
If Range("g8").Value = "Quatrième période" Then Rows("45:85;102:143").EntireRow.Hidden = True
If Range("g8").Value = "Cinquième période" Then Rows("45:101;123:143").EntireRow.Hidden = True
If Range("g8").Value = "Sixième période" Then Rows("45:122").EntireRow.Hidden = True
Pour provoquer le bug sélectionner une période autre que la première et cliquer sur éditer les certificats

Merci d'avance
Yannick
 

Pièces jointes

  • Fichier allégé version forum.zip
    663.8 KB · Affichages: 64
Dernière édition:

yannick64

XLDnaute Junior
Re : Erreur 13 lors du masquage de lignes avec macro

Bon j'ai trouvé la cause de mon problème apparemment la fonction rows ne permet pas de sélectionner plusieurs zone en une seule fois. donc le code qui fonctionne est celui là
If Range("g8").Value = "Première période" Then Rows("62:143").EntireRow.Hidden = True
If Range("g8").Value = "Seconde période" Then Rows("45:61").EntireRow.Hidden = True
Rows("74:143").EntireRow.Hidden = True
If Range("g8").Value = "Troisième période" Then Rows("45:73").EntireRow.Hidden = True
Rows("86:143").EntireRow.Hidden = True
If Range("g8").Value = "Quatrième période" Then Rows("45:85").EntireRow.Hidden = True
Rows("102:143").EntireRow.Hidden = True
If Range("g8").Value = "Cinquième période" Then Rows("45:101").EntireRow.Hidden = True
Rows("123:143").EntireRow.Hidden = True
If Range("g8").Value = "Sixième période" Then Rows("45:122").EntireRow.Hidden = True

Bonne continuation à tous :D
 

Discussions similaires

Réponses
3
Affichages
524

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote