Macro supprimer des lignes si total à payer = 0

Bonjour à tous,

J'ai un état que je joint en PJ.

J'aurais souhaité supprimer les lignes à l'aide d'une macro dont le montant total payer est 0.

La lancer lorsque la page est activé, (ça je sais faire, je l'ai appris sur le forum)

Le nombre de ligne est variable, il commence à L18 et peut aller jusqu'a L88

Afin de pouvoir garder un état avec uniquement les agents à payer et pouvoir en imprimer l'état.

En vous remerciant par avance de l'aide apportée.

Cordialement.

Bonjour

A tester

C'est un dieu vivant ce BANZAI64

Merci bien.

0

Re,

Bon du coup dans le fichier original, ça ne fait pas le même résultat que dans le fichier que j' ai mis en début de post avec des données en dur et non des formules.

Ca doit avoir une importance non?

Bonjour

Oui les formules posent problème : On supprime les formules

A tester

Merci Banzai64,

Ca fonctionne super bien.

J'ai en prévision un bouton en dessous pour initialiser le formulaire.

Imaginons, j'utilise la macro pour supprimer les lignes et j'enregistre le fichier, je reviens dessus le mois suivant, je n'ai plus tous les personnels.

Serait il possible d'imaginer une macro qui remet l'état avec toutes lignes?

Bonjour

A tester

C'est génial tout fonctionne, un grand Merci.

Juste une dernière chose je voudrais rajouter cette formule dans la macro et ça me colle une erreur en rouge.

Il faut peut être rajouter quelque chose dans la syntaxe non ?

  Range("B18").Formula = "=STXT(Personnels!A1;2;1)&" "&STXT(Personnels!A1;3;2)&" "&STXT(Personnels!A1;5;2)&" "&STXT(Personnels!A1;7;2)&" "&STXT(Personnels!A1;9;3)&" "&STXT(Personnels!A1;12;3)&" "&CAR(124)&" "&STXT(Personnels!A1;15;2)"

Merci par avance.

Bonsoir

Utilises

  Range("B18").Formula = "=MID(Personnels!A1,2,1)&"" ""&MID(Personnels!A1,3,2)&"" ""&MID(Personnels!A1,5,2)&"" ""&MID(Personnels!A1,7,2)&"" ""&MID(Personnels!A1,9,3)&"" ""&MID(Personnels!A1,12,3)&"" ""&CHAR(124)&"" ""&MID(Personnels!A1,15,2)"

Bonsoir,

J'ai remplacé la ligne qui va bien avec ton code VBA, ça fonctionne à merveille, un grand merci.

Bonne nuit.

Cordialement.

Bonne nuit,

Excuse-moi, en fait depuis la formule INSEE à été un brin modifiée et comporte cela en plus :

=SI(A1="";"";STXT(A1;2;1)&" "&STXT(A1;3;2)&" "&STXT(A1;5;2)&" "&STXT(A1;7;2)&" "&STXT(A1;9;3)&" "&STXT(A1;12;3)&" "&CAR(124)&" "&STXT(A1;15;2))

Avant de te demander, j'ai tenté de "comprendre" ton raisonnement alors j'ai copié "=STXT(Personnels!A1;2;1)&" et j'ai l'ai collé comme ceci

Range("B18").Formula = "=SI(Personnels!A1="";"";)&" "=STXT(Personnels!A1;2;1)&" "&STXT(Personnels!A1;3;2)&" "&STXT(Personnels!A1;5;2)&" "&STXT(Personnels!A1;7;2)&" "&STXT(Personnels!A1;9;3)&" "&STXT(Personnels!A1;12;3)&" "&CAR(124)&" "&STXT(Personnels!A1;15;2)"

Mais ça ne fonctionne pas, comme quoi developpeur VBA ça s'improvise pas

Bonne nuit.

Bonjour

Remplaces par celle-ci

  Range("B18").Formula = "=IF(Personnels!A1="""","""",MID(Personnels!A1,2,1)&"" ""&MID(Personnels!A1,3,2)&"" ""&MID(Personnels!A1,5,2)&"" ""&MID(Personnels!A1,7,2)&"" ""&MID(Personnels!A1,9,3)&"" ""&MID(Personnels!A1,12,3)&"" ""&CHAR(124)&"" ""&MID(Personnels!A1,15,2))"

Bonjour Banzai64,

Merci, je viens de coller ta formule, ça fonctionne parfaitement.

Encore merci pour tes multiples participations.

Bien cordialement.

Bonjour à tous,

Sur le tableau en PJ, dans l'onglet Astreinte en haut a gauche il y a 2 macros "Formater l'état pour l’impression" et "initialiser le formulaire.

Le fait d'actionner ces deux macros l'ue apres l'autre, reduit et agrandis la hauteur du tableau.

Je souhaiterais savoir s'il exsiste un moyen d'insérer le texte "Date" en dessous le tableau qui bougerai donc en fonction de la hauteur du tableau.

J'ai d'autre texte a insérer en dessous du tableau, mais si j'arrive à obtenir un exemple avec "date" je tenterai de m'adapter pour les autres texte que je dois insérer.

En vous en remerciant bien par avance.

Bon dimanche.

Christophe.

Bonjour

Il vaut mieux ouvrir un autre sujet car je ne sais pas

Désolé

Bonjour,

Ok c'est sympa d'avoir répondu, je ferais cela plus tard, car je suis en vadrouille

Bon dimanche.

Cordialement.

Christophe

Bonjour Banzai64,

J'ai soumis ma problématique dans un autre sujet, grâce aà FINDRH je t'en délivre la solution :

Sub ajtot()

ActiveSheet.Unprotect "mdp"
Range("B17").Select
vlig = Range("B17").End(xlDown).Row

Cells(vlig + 3, 6).Select

ActiveCell.Formula = "Date"
Cells(vlig + 3, 7).Select
ActiveCell.Formula = Now()
Selection.NumberFormat = "[$-F800]dddd, mmmm dd, yyyy"

Range(Cells(vlig + 3, 7), Cells(vlig + 3, 9)).Select
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
        .MergeCells = False
    End With
    Selection.Merge

 ActiveSheet.Protect "mdp"

Bonne journée à tous.

Cordialement,

Christophe.

Rechercher des sujets similaires à "macro supprimer lignes total payer"