XL 2010 verif fonctionnement fichier VBA

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

  • Déplacement colis.xlsm
    61.8 KB · Affichages: 7
  • deplace.jpg
    deplace.jpg
    75.8 KB · Affichages: 21

TooFatBoy

XLDnaute Barbatruc
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:

herve62

XLDnaute Barbatruc
Supporter XLD
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 ?
 

TooFatBoy

XLDnaute Barbatruc
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. ;)
 

TooFatBoy

XLDnaute Barbatruc
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 ??
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. ;)
 

Discussions similaires

Statistiques des forums

Discussions
312 758
Messages
2 091 784
Membres
105 074
dernier inscrit
JPATOUNE