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

Macro suppresion colonnes sous conditions

  • Initiateur de la discussion Initiateur de la discussion monimeka
  • Date de début Date de début

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 !

M

monimeka

Guest
j'ai une feuille avec 4 lignes utilisées.

La macro que je veux créer doit supprimer les colonnes entières lorsque la cellule de la ligne 4 est vide...

merci de votre aide
 
Re : Macro suppresion colonnes sous conditions

Bonjour,
avec ce code, en supposant que tu as les titres en ligne 1, et que tu commences dans la colonne A:

Code:
Sub efface_si_ligne4_vide()
    Range(Cells(4, 1), Cells(4, [IV1].End(xlToLeft).Column)).SpecialCells(xlCellTypeBlanks).EntireColumn.Delete
End Sub
 
Re : Macro suppresion colonnes sous conditions

Re-,
j'ai mis cette précision car on calcule la dernière colonne utilisée sur la ligne 1

Code:
[IV1].End(xlToLeft).Column)

te donne le numéro de la dernière colonne utilisée de la ligne 1
si ta cellule F1 est vide par exemple, et que F2 est utilisée, par ma formule, tu auras la dernière colonne utilisée (E)
Mais c'est juste pour le fun
on aurait pu utiliser, si la zone commence en A1 :

Code:
Sub efface_si_ligne4_vide()
    Range(Cells(4, 1), Cells(4, [A1].CurrentRegion.Columns.Count)).SpecialCells(xlCellTypeBlanks).EntireColumn.Delete
End Sub
 
Re : Macro suppresion colonnes sous conditions

Si j'ai bien compris, ton code se sert de la première ligne de la feuille pour l'aider a déterminer l'étendue de la plage (de colonnes) à traiter... 😱
la plage se termine a la colonne A mais commence a la dernière colonne pour la quelle la ligne 1 n'est pas vide...

(j'espère que je n'étale pas trop mon erreur😱)
 
Re : Macro suppresion colonnes sous conditions

RE-,
presque...😛

le code :

Code:
Range(Cells(4, 1), Cells(4, [IV1].End(xlToLeft).Column))

équivaut à :

Code:
Range ("A4:F4")

si la dernière colonne utilisée en ligne 1 est "F"

Cells(4, 1) équivaut à A4
Cells(4, [IV1].End(xlToLeft).Column) équivaut à F4 dans notre cas
Cells(numérodeligne, numérodecolonne)
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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