Supprimer des colonnes selon critere

  • Initiateur de la discussion Initiateur de la discussion Simmonet
  • 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 !

S

Simmonet

Guest
Bonjour,

Nous utilisons un tableau Excel 2000 qui est un export d'une appli spécifique que chaque utilisateur peut paramétrer à sa sauce, ce qui fait que les colonnes ne sont pas forcément dans le même ordre sur chaque micro.

Seulement, nous devons utiliser la même macro pour automatiser des tâches sur chaque micro.

D'où le besoin de supprimer des colonnes dont l'entête (sur la ligne 1) ne correspond pas au besoin.

Par exemple, je n'ai pas besoin de la colonne 'date du jour' et de la colonne 'commercial'. Seulement, comme leur emplacement est aléatoire, comment procéder ?

J'ai recherché sur le forum et dans les archives, mais je ne suis arrivé qu'à m'embrouiller l'esprit !

Merci de votre aide.
Simonet
 
bonjour Simonet, ya_v_ka

@Simmonet

tu peux chercher le numeros de colonne des colonnes dont tu as besoin d'une manière analogue à

Sub test()
Dim n As Integer
Dim coldate As Integer
Dim colmois As Integer
For n = 1 To Range('A1').End(xlToRight).Column
Select Case Cells(1, n)
Case 'date du jour'
coldate = n
Case 'mois'
colmois = n
End Select
Next

ensuite tu exploites coldate et colmois

dans le genre
cells(ligne,coldate)
cells(ligne,colmois)

en cas de probleme n'hesite pas à revenir

Message édité par: pierrejean, à: 20/06/2006 17:03
 
Merci pour ton aide, cependant mes faibles connaissances ne me permettent pas de savoir comment je peux exploiter les coldate et colmois ?

Si j'ai bien compris, ta macro analyse toutes les entêtes de colonne et sélectionne celles que je veux supprimer.

Ensuite, je dois lui dire de les supprimer, c'est bien ça ?

Merci !
 
re

non

il est compliqué de supprimer des colonnes car celles qui restent vont changer de numero (et egalement de lettres )
si tu supprimes la colonne B ,la colonne C va devenir la colonne B et la, cela devient difficile a gerer si tu fais plusieurs suppressions

le debut de la macro repere (par leur numero ) les colonnes dont tu as besoin et dont les en-tetes te sont connus

avec une petite adjonction on peut en donner la ou les lettres si tu preferes

mais je te vois mal parti si tu ne sais pas comment exploiter les N° de colonne

precise plutot ton but final et on tentera de t'aider
 
Bonsoir a tous,

J'apporte mon grain de sel même si quelques réponses ont deja été apportées. Pour supprimer des colonnes (ici je suppose que tes entetes de colonnes sont ceux que tu as cités dans ton exemple, mais rien ne t'emepche d'en rajouter) quelques soient leurs positions, je te propose la macro suivante:
Code:
Sub sup_colonne()
Dim j%

For j = Range('IV1').End(xlToLeft).Column To 1 Step -1
    If Cells(1, j).Value = 'date du jour' Or Cells(1, j).Value = 'commercial' Then
        Columns(j).Delete
    End If
Next j
End Sub


@+
 
- 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.
Retour