XL 2010 Supprimer une ligne si

jigour

XLDnaute Nouveau
Bonjour à tous,

J'aurais besoin d'un peu d'aide pour modifier une macro.

Je souhaiterais supprimer une ligne entière de la feuille 1 si une cellule de la colonne A contient le nom de la feuille (code OR-) au moment ou j'enregistre et suprime cette feuille .
J'ai mis en pièce jointe un exemple.
Merci d'avance
Jean
 

Pièces jointes

  • Exemple 1.xlsm
    31.7 KB · Affichages: 4
Solution
Bonjour

Je vois pas bien le rapport entre ta macro test et le besoin exprimé.. tu renommes la feuille à supprimer et tu fais un copier coller de je ne sais pas quoi dans la feuille "historique"

le code ci dessous se contente de supprimer la feuille, et sa ref dans la feuile 1

VB:
Option Explicit


Sub Macroessais_transfert()
Dim NomToSup As String


'message de confirmation de suppression
If MsgBox("Cette action suprimera la fiche", vbYesNo, "Attention") = vbNo Then Exit Sub
NomToSup = ActiveSheet.Name 'nom de la feuille qui sera supprimée




Application.DisplayAlerts = False 'desactive les alertes
ActiveSheet.Delete 'Suppression Fiche


With Sheets("Feuil1").ListObjects(1) 'avec la table de la feuille
    Set trouve =...

vgendron

XLDnaute Barbatruc
Bonjour

Je vois pas bien le rapport entre ta macro test et le besoin exprimé.. tu renommes la feuille à supprimer et tu fais un copier coller de je ne sais pas quoi dans la feuille "historique"

le code ci dessous se contente de supprimer la feuille, et sa ref dans la feuile 1

VB:
Option Explicit


Sub Macroessais_transfert()
Dim NomToSup As String


'message de confirmation de suppression
If MsgBox("Cette action suprimera la fiche", vbYesNo, "Attention") = vbNo Then Exit Sub
NomToSup = ActiveSheet.Name 'nom de la feuille qui sera supprimée




Application.DisplayAlerts = False 'desactive les alertes
ActiveSheet.Delete 'Suppression Fiche


With Sheets("Feuil1").ListObjects(1) 'avec la table de la feuille
    Set trouve = .ListColumns("Colonne1").Range.Find(NomToSup, lookat:=xlWhole) 'on cherche le nom de la feuille dans la colonne 1
    If Not trouve Is Nothing Then
        lig = trouve.Row - .Range.Row 'numéro de ligne
        .ListRows(lig).Range.Delete 'suppression de la ligne
    End If
End With


Application.DisplayAlerts = True 'resactive les alertes
End Sub
 

Discussions similaires