Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 verif fonctionnement fichier VBA

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

herve62

XLDnaute Barbatruc
Supporter XLD
Bonsoir
A nouveau soucis avec un fichier en VBA , tout fonctionnait , j'ai deplacé 2 lignes au dessous du "clearContents" sub deplacement de l'USF
pour les replacer au dessus , ET Maintenant BUG sur le ClearContents ? voir image
En + l'erreur est incohérente ??
ce n'est pas cette sous sub qui gêne , car sans c'est idem
Merci de vos avis !!
 

Pièces jointes

Bonjour,

C'est ce que je disais dans le fil de vérif de fichier précédent : les fusions compliquent la vie.
Regarde comment j'avais contourné le problème sans modifier la mise en page.

J'avais procédé en deux temps :
un premier décalage pour ne plus être embêté par la fusion
Set PlageActu = Sheets("Entrée").Range(RayonActu.Address).Offset(1, 0)
un deuxième décalage avec un resize pour avoir la bonne plage
Set PlageActu = PlageActu.Offset(0, 1).Resize(8, 1)

Ce n'est peut-être pas ce qu'il y a de mieux, mais ça marche. 😁

L'idéal serait de défusionner et aligner sur plusieurs colonnes. 😉
 
Dernière édition:
Ok Marcel , c'est ce qui va être fait
Moi j'aime bien TOUT comprendre , ce matin il fonctionnait , les données s'effacaient et se déplacaient
et d'un seul coup BUG
Il n'y a pas de cellules fusionnées dans le clear !!!!!!! j'ai fait 1 par 1 le clear et pas de soucis Alors ????
Mystère ?
 
Effectivement, il n'y a pas de cellules fusionnées dans la plage à effacer, mais ce sont tout de même les en-têtes fusionnés qui génèrent ce problème. 😉

Pour être un peu plus précis, je dirais que je pense que le problème vient de ton Ry, qui est justement une plage fusionnée.
Donc tu défusionnes et tu alignes sur plusieurs colonnes, et ça devrait être bon. 😉
 
Désolé, je n'avais pas compris ce que tu voulais dire, donc j'ai répondu complètement à côté de la plaque... 😔
Mais je viens de comprendre le sens de la phrase.



Actuellement tu as ça :
VB:
Call Ray_libre
If Libre = 1 Then Exit Sub

.Range(.Cells(lg, col), .Cells(lg + 7, col)).ClearContents

LocaF = ComboBox2.Value

Donc si j'ai bien compris, avant tu devais avoir ça :
VB:
.Range(.Cells(lg, col), .Cells(lg + 7, col)).ClearContents

LocaF = ComboBox2.Value

Call Ray_libre
If Libre = 1 Then Exit Sub

Dans ce cas, le "souci" est normal, puisque tu n'as pas initialisé la variable globale LocaF avant d'appeler la macro Ray_libre (qui, justement, utilise cette variable).
Donc tu peux déplacer la ligne d'initialisation de la variable LocaF comme ceci :
VB:
LocaF = ComboBox2.Value

Call Ray_libre
If Libre = 1 Then Exit Sub

.Range(.Cells(lg, col), .Cells(lg + 7, col)).ClearContents


Il n'y a donc pas de bug ici, et il n'y a plus de mystère : c'était juste un petit oubli d'initialisation de variable. 😉
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…