Voici ce que je peux te répondre sur ta question au sujet de
la suppression des colonnes nulles.
Tout d'abord, je déconseille absolument de déterminer une zone d'application sous la
forme Range ("A:K"), c'est trop statique et surtout trop aléatoire si
on a besoin d'insérer ou de supprimer une colonne dans cette plage par exemple,
ça fausse tout.
Dans la plupart des cas de figure, il vaut mieux travailler
sur une ou sur la zone en cours
Ensuite, il ne faut pas confondre ce qui suit :
"entirecolumn" est une propriété qui s'applique sur un objet "range" et non un objet sur lequel on
peut travailler.
De plus, il ne faut jamais oublier qu'avant
d'entreprendre une action, il faut SELECTIONNER l'élément sur lequel s'applique cette action.
Voici 2 exemples qui fonctionnent :
'cas1 : zone nommée ("zone_dapplication")
Sub
SUPRESSION_COLONNE()
For Each Column In
Range("zone_dapplication")
Column.EntireColumn.Select
If Application.Sum(Selection) = 0
Then Selection.Delete shift:= xlToLeft
Next Column
End Sub
'cas2 : zone en cours
Sub SUPRESSION_COLONNE()
Range("A1").Select
For Each Column in Selection.CurrentRegion
Column.EntireColumn.Select
If Application.Sum(Selection) = 0
Then Selection.Delete shift:=xlToLeft
Next Column
End Sub
Voilà, j'espère avoir à peu près répondu à ta question,
vinou19
Messages postés10Date d'inscriptionlundi 1 décembre 2008StatutMembreDernière intervention15 juin 2010 4 déc. 2008 à 17:00
bonsoir oldevi,
Je m'occupe de vous répondre dès demain.
Mais à mon avis, la réponse est dans : "faire systématiquement une sélection de quelque chose avant de tenter une action".
Et il n'y a pas de sélection dans votre essai