Supprimer Colonne plutôt que ligne
Fermé
erudess
-
Modifié le 25 août 2017 à 16:45
ccm81 Messages postés 10906 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 13 janvier 2025 - 26 août 2017 à 12:33
ccm81 Messages postés 10906 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 13 janvier 2025 - 26 août 2017 à 12:33
A voir également:
- Supprimer Colonne plutôt que ligne
- Déplacer une colonne excel - Guide
- Supprimer une page word - Guide
- Formule somme excel colonne - Guide
- Supprimer compte instagram - Guide
- Trier colonne excel - Guide
6 réponses
ccm81
Messages postés
10906
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
13 janvier 2025
2 429
25 août 2017 à 18:23
25 août 2017 à 18:23
Bonjour
Essaies ceci (sur plage sélectionnée)
Cdlmnt
Essaies ceci (sur plage sélectionnée)
Option Explicit Option Base 1 Public Sub OK() Dim plage As Range, li As Long, co As Long, nbli As Long, nbco As Long Dim tplage(), lt As Long Dim codeb As Long, cofin As Long Set plage = Selection nbli = plage.Rows.Count nbco = plage.Rows.Count lt = 1 ReDim tplage(1 To nbli, 1 To nbco) For li = 1 To nbli For co = 1 To nbco If plage.Cells(li, co) <> "" Then tplage(lt, 1) = plage.Cells(li, co).Value lt = lt + 1 Exit For End If Next co Next li plage.ClearContents plage = tplage End Sub
Cdlmnt
Bonjour Merci pour la réponse. ça semble bien fonctionner cependant je rencontre des problèmes dans les situations suivantes :
- quand il y a une seul ligne a déplacer. Elle est effacée
- quand il y a un mot dans la colonne d'a coté il est aussi éffacé
- Il y a toujours une remontée de ligne
j'ai essayé de détaillé et d'illustré le mieux possible les problèmes rencontrés dans le fichier cjoint ci dessous.
http://www.cjoint.com/c/GHAg7SXuoWS
Merci encore pour ton aide !
- quand il y a une seul ligne a déplacer. Elle est effacée
- quand il y a un mot dans la colonne d'a coté il est aussi éffacé
- Il y a toujours une remontée de ligne
j'ai essayé de détaillé et d'illustré le mieux possible les problèmes rencontrés dans le fichier cjoint ci dessous.
http://www.cjoint.com/c/GHAg7SXuoWS
Merci encore pour ton aide !
vraiment désolé ! je viens de me rendre compte que je me suis gouré dans le tableau que j'ai appelé "ce que j'aimerai faire" dans ma toute première requête c'est plutôt comme ceci que ça devrait être fait en gardant la même ligne seul la colonne change et on enlève les cellules vides
http://www.cjoint.com/c/GHAhgPxbCwS
Dsl encore
http://www.cjoint.com/c/GHAhgPxbCwS
Dsl encore
ccm81
Messages postés
10906
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
13 janvier 2025
2 429
Modifié le 26 août 2017 à 11:30
Modifié le 26 août 2017 à 11:30
1. ton fichier est au format xltm et cjoint n'aime pas, mets le au format xlsm
2. - quand il y a une seul ligne a déplacer. Elle est effacée
effectivement, corrige comme ça
nbco = plage.Columns.Count
3. - Il y a toujours une remontée de ligne
c'est ce que tu avais fait dans ton exemple
pour le reste j'attends ton nouveau fichier
Cdlmnt
2. - quand il y a une seul ligne a déplacer. Elle est effacée
effectivement, corrige comme ça
nbco = plage.Columns.Count
3. - Il y a toujours une remontée de ligne
c'est ce que tu avais fait dans ton exemple
pour le reste j'attends ton nouveau fichier
Cdlmnt
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ccm81
Messages postés
10906
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
13 janvier 2025
2 429
26 août 2017 à 11:50
26 août 2017 à 11:50
Essaies ceci
Cdlmnt
Option Explicit Public Sub OK() Dim plage As Range, li As Long, co As Long, nbli As Long, nbco As Long Dim tplage(), lt As Long, ct As Long Dim codeb As Long, cofin As Long Set plage = Selection nbli = plage.Rows.Count nbco = plage.Columns.Count lt = 1 ReDim tplage(1 To nbli, 1 To nbco) For li = 1 To nbli ct = 1 For co = 1 To nbco If plage.Cells(li, co) <> "" Then tplage(lt, ct) = plage.Cells(li, co).Value ct = ct + 1 End If Next co lt = lt + 1 Next li plage.ClearContents plage = tplage End Sub
Cdlmnt
ccm81
Messages postés
10906
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
13 janvier 2025
2 429
26 août 2017 à 12:33
26 août 2017 à 12:33
De rien
Si c'est fini, peux tu mettre le sujet à résolu (en dessous du titre de ton premier message)
Bonne journée
Si c'est fini, peux tu mettre le sujet à résolu (en dessous du titre de ton premier message)
Bonne journée