*macro condition suppression pr colonne vide
Résolu
tony020422
Messages postés
566
Date d'inscription
Statut
Membre
Dernière intervention
-
tony020422 Messages postés 566 Date d'inscription Statut Membre Dernière intervention -
tony020422 Messages postés 566 Date d'inscription Statut Membre Dernière intervention -
Bonjour Membres de CCM,
J'aimerais que vous m'aidiez pour ma macro Excel déjà réalisée....
J'aimerais la compléter de la facon suivante:
Mettre le code permettant de supprimer les colonnes blanches (vides en fait) !
donc mettre une condition: vérifier le contenu des colonnes, si elles sont entièrement vides, les supprimer..
(car lors de l'extraction de mes données de SAP vers Excel, il se génère aléatoirement des colonnes blanches un peu partout, mais jamais au meme endroit...j'aimerais dnons toutes les supprimer, pour que le reste de ma macro s'applique nikel)
Merci par avance à tous ceux qui prendront la peine de m'aider!!
Bonne journée et bon ap'!
J'aimerais que vous m'aidiez pour ma macro Excel déjà réalisée....
J'aimerais la compléter de la facon suivante:
Mettre le code permettant de supprimer les colonnes blanches (vides en fait) !
donc mettre une condition: vérifier le contenu des colonnes, si elles sont entièrement vides, les supprimer..
(car lors de l'extraction de mes données de SAP vers Excel, il se génère aléatoirement des colonnes blanches un peu partout, mais jamais au meme endroit...j'aimerais dnons toutes les supprimer, pour que le reste de ma macro s'applique nikel)
Merci par avance à tous ceux qui prendront la peine de m'aider!!
Bonne journée et bon ap'!
Configuration: Windows XP Internet Explorer 6.0
13 réponses
-
Hello
sujet apparemment déjà résolu ici : http://www.commentcamarche.net/forum/affich 2317639 vba excel supprimer les colonnes vides
Tchuss -
Merci!
Le code est le suivant:
Sub sup_col_vides()
Dim c
For c = 256 To 1 Step -1
If Cells(65536, c).End(xlUp).Row = 1 Then Cells(1,c).EntireColumn.Delete
Next c
End Sub
Etant une superbe buse en programmation VBA, pourrais tu m'indiquez ce que représente 256 et 6556 ?!
Merci! -
Bonjour,
256 est le nombre de colonnes (sur excel 2003) et 65536 le nombre de lignes.
Il faudra augmenter ces valeurs sur excel 2007.
Petite précision, cette macro te supprimera la colonne même si la cellule de la ligne 1 n'est pas vide, à toi de voir si c'est genant ou pas.
eric -
bonjour eriic,
en fait les colonnes sont INTEGRALEMENT vides donc c'est pas un souci car je veux toutes les enlevées!!
Mon fichier excel a une taille variable, les colonnes vont de A à Y maxi
mes lignes sont au nombres de 50 000 maxi...
Je mieux fais de mettre quoi alors?
Sub sup_col_vides()
Dim c
For c = 30 To 1 Step -1
If Cells(100000, c).End(xlUp).Row = 1 Then Cells(1,c).EntireColumn.Delete
Next c
End Sub
Dernier truc j'aimerais si possible incruster ca dans ma macro existante: me reste à enlever le "Sub sup_col_vides() "
et le "End Sub " et utiliser ceux de ma macros c'est ca ?!
Merci par avance!!!!! -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Oui, tu as tout bon.
Bonne continuation
eric -
eriic, je viens de lancer ma macro mais il se passe pas ce que je veux!!
je vais te faire un schéma pour comprendre! -
Tu trouveras ici mon fichier tel qu'il est (en haut a gauche) et tel qu'il est a la fin ( en bas a gauche)
http://images.imagehotel.net/?knpn4l1tn4.png
mais je pense savoir pourquoi ca marche pas !
mon anicenne macro supprimée certaine colonnes donc la ca décale tout!
Je vais tout refaire je pense...
Je te tiens au courant mais je pense que ca va marcher!!
Merci bcp en tout cas, vraiment!! -
désolé mais ca ne marche pas!
j'ai une erreur du débogueur:
If Cells(100000, c).End(xlUp).Row = 1 Then
pourquoi?! -
ça ne marche pas ne veut rien dire... il faut fournir le message d'erreur.
En l'occurence le nombre de ligne étant de 65536 tu ne peux aller au delà.
Remplace 100000 par 10000 -
mais mon fichier peut faire plus comme moins de ligne!
l'erreur est 1004...
HELP Eriic !!! -
et bien met 65536
Et pour l'erreur il faut mettre le libellé en plus du n°, c'est plus explicite -
en effet j'ai plu d'erreur mais cela ne me supprime que ma colonne A, pas les colonnes M N et O ........ pourquoi ?!
Ps: le contenu de post n°2 etait l'exemple tel que je l'ai trouvé donc san référence a mon tableau qui pourrait faire plu de 65536 lignes!! -
c'est bon problème résolu merci a tous !!
a bientot sur CCM!