Comment resserrer une colonne sans trier

Résolu/Fermé
nihcoc Messages postés 192 Date d'inscription dimanche 9 mars 2014 Statut Membre Dernière intervention 28 février 2023 - 28 déc. 2015 à 21:06
nihcoc Messages postés 192 Date d'inscription dimanche 9 mars 2014 Statut Membre Dernière intervention 28 février 2023 - 30 déc. 2015 à 16:51
Bonjour,
version excel 2000

J'ai une colonne A contenant de nombreux noms,mais avec de temps en temps des cellules vides Je cherche a faire une macro qui resserrerait la colonne sans la trier,et sans passer par la suppression de lignes vides.


D'avance Merci pour tout
A+

Exemple:

Alain

Nicole

Patrick
Jean-Noël
Joseph
Marc

Nadège
Marie-Claire

Résultat:

Alain
Nicole
Patrick
Jean-Noël
Joseph
Marc
Nadège
Marie-Claire




A voir également:

7 réponses

Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
28 déc. 2015 à 21:23
Bonsoir,

ce qui m'interpelle dans ta demande c'est "et sans passer par la suppression de lignes vides"
s'il s'agit d'un tableau avec des données dans les colonnes suivantes B, C etc
si tu supprimes des cellules en colonne A les données en B et les suivantes ne vont plus correspondre avec celle de la colonne A
0
nihcoc Messages postés 192 Date d'inscription dimanche 9 mars 2014 Statut Membre Dernière intervention 28 février 2023 5
28 déc. 2015 à 22:09
Bonsoir
je veux tout simplement resserrer ma colonne A qui contient des cellules vides.
en fait c'est ce que fait la fonction trier sauf que justement cela trie la colonne,ce que je ne veux pas
je ne veux pas supprimer des lignes entières a cause de données éventuelles dans les autres colonnes.
d'avance merci
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 213
29 déc. 2015 à 08:38
Bonjour,

Tu insères une colonne avec 1, 2, 3, etc, tu tries, supprime les vides et re-tries par n°.
Ca prend 30s.
eric
0
nihcoc Messages postés 192 Date d'inscription dimanche 9 mars 2014 Statut Membre Dernière intervention 28 février 2023 5
29 déc. 2015 à 08:49
Je comprend et je connais le système ,mais j'aurais préféré par VBA sans masquer ou supprimer les lignes vides afin de pouvoir m'en servir a partir d'une barre d'outil.
Merci
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
29 déc. 2015 à 08:40
RE,

alors il faut passer par du VBA si tu as quelques connaissances, mais la ligne entière sera masquée
0
nihcoc Messages postés 192 Date d'inscription dimanche 9 mars 2014 Statut Membre Dernière intervention 28 février 2023 5
29 déc. 2015 à 08:47
Ne serait-il pas possible par VBA de ne pas masquée ou supprimer la ligne.

Merci.
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié par Mike-31 le 29/12/2015 à 09:14
Re,

non soit tu supprimes la cellule et dans ce cas les données qui se trouvent dans la cellule inférieure remonte et prend la place de la cellule supprimée et après les données des colonnes de droite comme de gauche ne correspondrons plus avec les données de la colonne modifiée

soit tu supprimes la ligne

soit tu masques la ligne, ce qui correspond le mieux à ta demande et qui te permettra d'afficher les lignes masquées
le masquage d'une cellule est impossible

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nihcoc Messages postés 192 Date d'inscription dimanche 9 mars 2014 Statut Membre Dernière intervention 28 février 2023 5
29 déc. 2015 à 23:38
Bonjour

Ce n'est pas tout a fait ce que je cherchais mais enfin ça marche.

Merci a tous .
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
30 déc. 2015 à 08:43
Re,

un code tout simple à coller dans les propriétés d'un bouton activex pour traiter la colonne A à partir de la deuxième ligne

Option Explicit

Private Sub CommandButton1_Click()
Dim i As Long
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
With Cells(i, 1)
.EntireRow.Hidden = .Value = ""
End With
Next i
End Sub

0
Je te remercie Mike-31.
ça marche,mais ça masque les lignes vides,au risque de masquer des données dans les colonnes a coté.
Quand on se sert du bouton de tri , ça trie et ça ressert la colonne s'il y a des vides .
J'aurais préféré la même chose sans le tri.
Merci a toi quand même.
0
Bonjour
peux être un truc comme ça
Sub TestVide()
Nlig = Range("A" & Rows.Count).End(xlUp).Row
For L = 2 To Nlig
   If Range("A" & L).Value = "" Then
      Deb = L
      For D = Deb To Nlig
         If Range("A" & D).Value <> "" Then
            Range("A" & D).Cut Destination:=Range("A" & L)
            Exit For
         End If
      Next
   End If
Next
End Sub

A+
Maurice
0
nihcoc Messages postés 192 Date d'inscription dimanche 9 mars 2014 Statut Membre Dernière intervention 28 février 2023 5
30 déc. 2015 à 16:51
Bonjour

Merci a toi Maurice , c'est exactement ce que je cherchais.
Merci encore pour ton travail ,c'est sympa
0