Supprimer des lignes vides

Bonjour stepaustras,

C'est exactement cela dont j'ai besoin.
Pourriez-vous m'indiquer la démarche à suivre?
Merci.

Bonjour BsAlv,

Je me suis trompé. Il s'agit bien de votre version qui m'intéresse (tableau-sans-lignes-vides.xlsb (50.42 Ko).
Pourriez-vous m'indiquer la démarche à suivre?
Merci.

Bonjour BsAlv,

J'ai pu appliquer la macro. Elle a permis de remonter les informations regroupées par tronçon vers le haut. Mais cela n'a pas permis de supprimer les lignes vides (à ce stade-là, pour moi les lignes vides correspondent à des absences d'information à partir de la colonne E et jusqu'à la dernière colonne. Voici la macro (test)

:

Sub test()
Dim iLigneMax
Set dict = CreateObject("scripting.dictionary") 'dictionaire pour les valeurs unique de la colonne A
With Sheets("Passed").Range("A1").CurrentRegion 'la plage
For i = .Rows.Count To 2 Step -1 'boucle du fin vers le début
If Not dict.exists(.Cells(i, 1).Value) Then 'nouveau valeur unique
dict(.Cells(i, 1).Value) = 0 'ajouter au dictionaire
r = Application.Match(.Cells(i, 1).Value, .Columns(1), 0) 'première ligne de cette valeur
'Application.Goto .Cells(r, 1)
iLigneMax = 1
For j = 4 To 15 ' de la colonne E vers O
Set c = .Cells(r, j).Resize(i - r + 1) 'cette plage
c.Name = "conejo" 'nom de cette plage
arr = Filter(Evaluate("transpose(if(conejo="""",""~"",conejo))"), "~", 0) 'matrice ave élimination des cellules vides
iLigneMax = Application.Max(iLigneMax, UBound(arr) + 1)
c.ClearContents 'vider la plage
If UBound(arr) >= 0 Then c.Resize(UBound(arr) + 1).Value = Application.Transpose(arr) 'coller les valeurs non-vides
Next
'Debug.Print r, i, iLigneMax
If iLigneMax < i - r + 1 Then
With .Cells(r + iLigneMax, 1).Resize(i - r - iLigneMax + 1).EntireRow
On Error Resume Next
.Ungroup
On Error GoTo 0
.Delete
End With
End If

With .Cells(r, 1).EntireRow.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 3
End With
End If
Next
End With
End Sub

re,

j'ai modifié 2 choses (vous le voyez dans l'editeur VBA avec ">>>>>", CAD à partir de la colonne 5 au lieu de 4 et mettre à jour la valeur i après la supprimation des quelque lignes

Merci, cela fonctionne.
Peut-être est-il possible d'aller plus loin dans le formatage. Il reste encore quelques cellules vides. Il faudrait les fusionner pour qu'il n'y en ait plus en regroupant par tronçon. Et aussi lorsque les informations se répètent, les fusionner aussi (comme le champ LONGUEUR).

Voici un échantillon du tableau après votre macro :

image

et voici ce que je voudrais :

image

Est-ce possible?

fusionner des cellules, c'est jurer dans l'église.

Merci. C'est super. Il manque juste quelques mises au point :

- Il faut conserver les couleurs d'origine des cellules. En pj le même fichier sur lequel vous travaillez mais avec les couleurs en plus

- Les champs suivants (n° 40 à 43) ne doivent pas être fusionnés

EMPRUNT / TRAVERSEE DE LA VOIENOM DE LA VOIEIMPORTANCE DE LA VOIE (CLASSEMENT IGN)NATURE DE LA VOIE
Merci.

re,

la 2ième macro est pour remplacer la feuille "général" par le backup "général (2)"

Je suis désolé je suis perdu sur ce qu'il y a à faire.

c'est quoi le problème, cela ne fonctionne plus ?

Je ne sais pas. Je ne sais quelle macro utiliser il y en a deux

Dans Tableau Général, les colonnes 40 à 43 ne sont pas fusionnées, mais il n'y a pas d'informations

re,

Test est la macro pour vous, l'autre était pour moi/vous pour créer une nouvelle feuille "...général", une copie de "...général (2)" quand on veut lancer "test" une 2ième fois.

Merci.
Peut-on faire encore quelques retouches?

- les cellules des colonnes 40 à 43 ne sont pas fusionnés. OK. Mais ils faudrait qu'elles le soient lorsqu'il y a des champs vides :

image

Est-ce possible?

- Il ne faudrait pas de trait rouge. Il faudrait une bordure normale à toutes les cellules, des bordures extérieures épaisses pour chaque tronçon, des bordures extérieures épaisses qui regroupe les colonnes 1à 3, les colonnes 4 à 11, les colonnes 12 à 15 et les colonnes 16 à 44

image

Merci de votre sollicitude.

re, nouveau essai ....

Bonjour,

C'est un fichier xlsx et sans macro.

Bonjour,

Désolé de prendre sur votre temps, mais

- les colonnes ne doivent pas être fusionnées (sauf là où il y a des cellules vides)

- il faudrait mettre des bordures épaisses des colonnes A à D, E à L, M à P et R à la dernière colonne

- Il faut conserver les couleurs du fichier d'origine.
Merci encore!

re,

je renonce

Ok un grand merci pour votre aide! Je garde finalement la version avant ma demande sur les bordures épaisses

Rechercher des sujets similaires à "supprimer lignes vides"