Lignes vides mais contenant une MFC

ntan-évindi

XLDnaute Occasionnel
Bonjour à toutes et à tous,

Pour supprimer des lignes vides, je fais comme ci-après

Code:
Sheets("Affich").Select
With Range("D7:D" & [D65536].End(xlUp).Row)
   .Replace What:="", Replacement:="", LookAt:=xlWhole
    .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With

J’ai fait plusieurs essais, cela fonctionne bien.

Par contre quand j’exécute cette macro dans mon fichier réel, j’ai un bug.

Le fichier réel contient une Mise en Forme Conditionnelle sur la colonne C.

Peut être cela vient-il du fait que j’ai le même code dans ma macro, à ceci près qu’elle me supprime correctement les lignes pour lesquelles dans la colonne B il y a un 0.

Avez-vous une idée à suggérer.

D’avance je vous remercie.

Cordialement.

Ntang
 

Gorfael

XLDnaute Barbatruc
Re : Lignes vides mais contenant une MFC

Salut ntan-évindi et le forum
Pas sûr de comprendre, alors juste un essai
Code:
With Sheets("Affich").Range([D7], Cells(Rows.Count, "D").End(xlUp))
     .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With
A+
 

ntan-évindi

XLDnaute Occasionnel
Re : Lignes vides mais contenant une MFC

Bonsoir à toutes et à tous,

Merci de vos réponses.

Paritec a raison, un fichier c’est mieux, je vous en joint un.
Dans ce fichier, 3 onglets ;
Le premier est le listing du personnel, avec en colonne A la clé qui sert pour les recherches.
Le deuxième sert à recevoir les données qui sont au préalable émises par un Crystal Report. Sur cet onglet les colonnes L à T sont habituellement masquées.
Le troisième onglet sert à la mise en forme pour impression.

Sur l’onglet « Releve » j’ai 3 boutons le premier sert à « spliter » les données de la colonne F (des données horaires dont le format est inexploitable) auxquelles j’ajoute celles de la colonne J.
Le deuxième bouton sert à la mise en forme.
Le troisième bouton efface toutes les données y compris celles chargées et celles reportées sur le troisième onglet.

Les macros ont été faites au fur et à mesure des besoins, donc pas forcément bien structurées et encore moins bien codées, c’est souvent du code provenant de l’enregistreur.

Alors dites moi si vous pouvez m’aider pour la dernière difficulté rencontrée : éliminer les lignes vides.

D’avance je vous remercie.

Cordialement.

Ntang
 

Pièces jointes

  • Copie de Affichage DMT.zip
    46.5 KB · Affichages: 43

ntan-évindi

XLDnaute Occasionnel
Re : Lignes vides mais contenant une MFC

Re Bonsoir,

Je viens d'essayer le code de Gorfael, j'ai un bug:

Code:
'Destruction des lignes vides
With Sheets("Affich").Range([D7], Cells(Rows.Count, "D").End(xlUp))
     [COLOR="Red"].SpecialCells(xlCellTypeBlanks).EntireRow.Delete[/COLOR]
End With

le debogueur s'arrête à la ligne rouge.

Je continue à chercher et bien sur votre aide sera la bienvenue.

Cordialement.
Ntang
 

Gorfael

XLDnaute Barbatruc
Re : Lignes vides mais contenant une MFC

Salut ntan-évindi et le forum
Je viens d'essayer juste
Code:
'Destruction des lignes vides
With Sheets("Affich").Range([D7], Cells(Rows.Count, "D").End(xlUp))
     [COLOR=Red].SpecialCells(xlCellTypeBlanks).EntireRow.Delete[/COLOR]
End With
et chez moi, ça m'efface bien les lignes vides en D à partir de la ligne 7. Quelle erreur est affichée ?
A+
 

ntan-évindi

XLDnaute Occasionnel
Re : Lignes vides mais contenant une MFC

Bonjour Gorfael, Bonjour le Forum,

J'ai effectivement un bug - erreur 1004 - pas de cellules correspondantes.

Si j'exécute uniquement ce code, cela fonctionne.

Par contre quand j'exécute celui ci-après, c'est là que ça ne fonctionne plus.

Code:
'Destruction des lignes vides
Sheets("Affich").Select
With Range("D7:D" & [D65536].End(xlUp).Row)
    .Replace What:="", Replacement:="", LookAt:=xlWhole
    .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With



'Destruction Des lignes comportant un Zero en colonne 2
Sheets("Affich").Select
With Range("B7:B" & [B65536].End(xlUp).Row)
    .Replace What:="0", Replacement:="", LookAt:=xlWhole
    .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With

J'ai changé mes formules dans les cellules pour afficher un 0 au lieu de "" et là cela fonctionne, mais par contre j'ai 7 lignes en bas de mon tableau dont le format (quadrillage) ne s'efface plus.

C'est pas facile, je sais, c'est le dur métier d lr'apprentissage.

Cordialement.
Ntang
 

Gorfael

XLDnaute Barbatruc
Re : Lignes vides mais contenant une MFC

Salut ntan-évind et le forum
Par contre quand j'exécute celui ci-après, c'est là que ça ne fonctionne plus.
Si un lambeau de code fonctionne seul, mais pas dans la macro complète, l'erreur ne vient pas du lambeau CQFD

Edit : Je viens de voir qu'il y avait un fichier en pièce jointe
Code:
'Destruction Des lignes comportant un Zero en colonne 2
Sheets("Affich").Select
With Range("B7:B" & [B65536].End(xlUp).Row)
    .Replace What:="0", Replacement:="", LookAt:=xlWhole
    .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With
Peux-tu m'expliquer ce que ton code est supposé faire, pour toi ? Ce que je lis littéralement :
- Sélectionner l'onglet "Affich"
- avec pour préfixe plage B7 à dernière non vide de B
- remplacer les valeurs 0 (cellule complète) par ""
- effacer les lignes ayant des cellules vides
- Fin du préfixe
Je ne comprends pas du tout la ligne en gras
mais pas non plus le sens de ce code

Donner un fichier, c'est bien... mais sans pouvoir savoir ce qu'il y a comme données et ce qu'on doit obtenir en final, ça réduit considérablement son utilité.
J'ai 3 modules (1 suffit) et des macros qui s'appliquent certainement à un onglet particulier (mais lequel ?), et que je ne peux tester, parce que je n'ai aucune donnée et pas d'idée du résultat attendu.

de la ligne 7 à 289, ce n'est pas utile, mais 3 ou 4 de données (créées pour qu'elles soient significatives, de sortes qu'on puisse réellement tester les macros, ne serait pas un luxe.
A+
 
Dernière édition:

ntan-évindi

XLDnaute Occasionnel
Re : Lignes vides mais contenant une MFC

Bonsoir à toutes et à tous,
Bonsoir Gorfael et merci de tes réponses,

Plutôt que de longues explications, qui peuvent me paraitre claires mais confuses à ceux qui les lisent, je joins un nouveau fichier avec des explications, en espérant que cela permettra votre compréhension.
Et vous permettra de voir pourquoi la macro affich ne fonctionne pas en totalité, à partir de la destruction des lignes

D'avance je vous remercie.

Cordialement
Ntang
 

Pièces jointes

  • Affichage DMT.zip
    22.7 KB · Affichages: 31

Discussions similaires

Statistiques des forums

Discussions
312 611
Messages
2 090 220
Membres
104 452
dernier inscrit
hamzamounir