Masquer des colonnes qui bug dans une boucle

Résolu
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention   -  
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je rencontre un problème, j'ai une boucle avec ce code :

Range("M:M,O:O,R:V,AA:AG,AK:AK").EntireColumn.Hidden = True

Ce code fonctionne très bien

Mais si je récupère des lien hypertexte dans une colonne "N" celui ci bug.

Je n'arrive pas à comprendre pourquoi ?

Merci pour votre aide.

Pascal




8 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonsoir, tu veux dire que la ligne de code que tu montres ne te donne plus le résultat attendu (lequel?), ou donne un message d'erreur (lequel?) quand tu modifies le reste du code (lequel?)?
0
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention  
 
Bonsoir yg_be,

Oui j'ai un message d'erreur d'exec 1004 la méthode range de l'objet global a échoué.

J'ai essayé de passer par un module et c'est pareil.

Merci pour ton aide.

Bonne soirée.

Pascal
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
peux-tu expliquer ce qui fait que cela marche parfois et parfois pas? que changes-tu entre les deux fois?
tu ne montres qu'une seule ligne de code. je ne peux faire de suggestion qu'à ce propos:
je te suggère donc de préciser de quelle feuille il s'agit, par exemple:
dim unefeuille as worksheet
set unefeuille  = 'ceci ou cela
unefeuille.Range("M:M,O:O,R:V,AA:AG,AK:AK").EntireColumn.Hidden = True

il est toujours dangereux de ne pas préciser exactement les objets, d'autant plus dangereux quand le code VBA utilise des
Select 
ou autre
Activate
, absolument à proscrire.
0
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention  
 
c'est depuis que je récupère des liens hypertexte dans la colonne "N"n°14.

Je joins le lien du fichier.

Merci.

https://www.cjoint.com/c/GKqsnUoUPvX
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
tu ne m'expliques ni comment utiliser ton fichier pour avoir le problème, ni ce que tu as changé et qui fait que cela ne fonctionne plus.
je maintiens ma suggestion: remplacer ta ligne par quelque-chose comme
Sheets("Données commerciales").Range("M:M,O:O,R:V,AA:AG,AK:AK").EntireColumn.Hidden = True

ou
Worksheets(I).Range("M:M,O:O,R:V,AA:AG,AK:AK").EntireColumn.Hidden = True

pour éviter d'avoir Range tout seul, sans préciser où.
je suggère aussi de simplifier ton code, par exemple remplacer ceci
 Sheets("Données commerciales").Select
    Range("C6:C11").Select
    Selection.Copy
    
    ActiveWorkbook.Worksheets(I).Select
    Range("C6").Select
    ActiveSheet.Paste

par cela
 Sheets("Données commerciales").Range("C6:C11").Copy Worksheets(I).Range("C6")
0
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention  
 
ça ne fonctionne plus depuis que je récupère par une requête les lien hypertexte et que je fais le module1.

je fais ce code sur toutes les feuilles sauf la dernière ("Données commerciales").

j'ai essayé Worksheets(I).Range("M:M,O:O,R:V,AA:AG,AK:AK").EntireColumn.Hidden = True

et j'ai un message d'erreur d'éxecution 1004 erreur définie par l'application ou par l'objet.

Pour info je clique sur le rectangle bleu en haut de la page PM Tarif_T3.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai changé tous les codes de

Sheets("Données commerciales").Range("C6:C11").Copy Worksheets(I).Range("C6")

mais j'ai toujours le message.

J'ai mis une seule colonne et ça fonctionne ?

Worksheets(I).Range("AK:AK").EntireColumn.Hidden = True
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
ton code est trop compliqué, je laisse d'autres t'assister.
0
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention  
 
je te remercie pour avoir pris du temps pour moi.

Bonne soirée.

Pascal
0
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai mis cela et ça fonctionne :

Worksheets(I).Range("M:M").EntireColumn.Hidden = True
Worksheets(I).Range("O:O").EntireColumn.Hidden = True
Worksheets(I).Range("R:R").EntireColumn.Hidden = True
Worksheets(I).Range("S:S").EntireColumn.Hidden = True
Worksheets(I).Range("T:T").EntireColumn.Hidden = True
Worksheets(I).Range("U:U").EntireColumn.Hidden = True
Worksheets(I).Range("V:V").EntireColumn.Hidden = True
Worksheets(I).Range("AA:AA").EntireColumn.Hidden = True
Worksheets(I).Range("AB:AB").EntireColumn.Hidden = True
Worksheets(I).Range("AC:AC").EntireColumn.Hidden = True
Worksheets(I).Range("AD:AD").EntireColumn.Hidden = True
Worksheets(I).Range("AE:AE").EntireColumn.Hidden = True
Worksheets(I).Range("AF:AF").EntireColumn.Hidden = True
Worksheets(I).Range("AG:AG").EntireColumn.Hidden = True
Worksheets(I).Range("AK:AK").EntireColumn.Hidden = True

alors que cela ne fonctionne pas, , je ne comprends rien mais bon j'ai masqué mes colonnes.

Worksheets(I).Range("M:M,O:O,R:V,AA:AG,AK:AK").EntireColumn.Hidden = True
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
bien vu!
0
pascalou83400 Messages postés 277 Date d'inscription   Statut Membre Dernière intervention  
 
Je remercie yg_be et Le Pivert, vous m'avez fait faire un grand bon en avant avec votre aide.

Bonne journée.

Pascal
0