Lancer une macro après avoir actualisés une feuille

Bonjour cher forum.

Je souhaiterais lancer une macro après avoir actualisée une feuille.

Est-ce possible?

Merci

La macro (actuellement dans le Worksheet de la feuille) numérote chaque dossier de la colonne B à partir de A2:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Long, k As Long
        With Sheets("Existant")
            k = 1
            For i = 2 To .Range("B" & .Rows.Count).End(xlUp).Row
                    If IsNumeric(.Range("A" & i)) And .Range("B" & i) <> "" Then
                    .Range("A" & i) = k
                    k = k + 1
                End If
            Next i
        End With
End Sub

Bonjour,

Pour lancer une macro ...une instruction possible :

Application.Run("TaMacro")

En espèrant que cela t'aide

Bonjour à nouveau,

ok, j'ai changé mon code pour celui-ci :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long, k As Long

 Application.EnableEvents = False
        With Sheets("Existant")
            k = 1
            For i = 2 To .Range("B" & .Rows.Count).End(xlUp).Row
                    If IsNumeric(.Range("A" & i)) And .Range("B" & i) <> "" Then
                    .Range("A" & i) = k
                    k = k + 1
                End If
            Next i
        End With
Application.EnableEvents = True
End Sub

... à moins qu'il y ait plus simple!

A+

Re,

Je dois t'avouer que je ne comprends pas du tout ta question ...

Quelle est la macro que tu veux lancer ... ???

Tu dis après avoir actualisé ... comment est effectué cette actualisation dont tu parles ...???

Bonjour James007,

Merci pour votre intérêt.

Actualiser dans la section Données. Il suffisait de créer un événement dans la feuille en question, un Worksheet_change.

Mais peut-être qu'il y a mieux!

A+

Re,

A ce stade, plusieurs questions se posent ...

1. Une macro évènementielle est normalement déclenchée... par un évènement ...

2. Quel est ton évènement ? Quelles mise à jour vas-tu effectuer ???

3. Si tu veux un déclenchement sans évèvenement ... il te faut une macro standard ...

4. Sans voir ton fichier ... cet exercice peut s'apparenter à une séance de voyance ... ratée ..

Bonjour James007,

Une fois par mois j'actualise avec le bouton Actualiser l'onglet Neuf et Existant avec une priorité de connexion sur une BD externe.

Mon truc fonctionne, quand j'actualise ça numérote chaque dossier en colonne B (Mais est-ce la bonne manière?).

Maintenant, je suis à l'étape de copier-coller la sélection que je fais à l'onglet Sélection.

Je tente de reproduire en code cette idée:

En cliquant sur le bouton Filtrer_Selection, quand E2= Neuf, copie la section B5:H5 jusqu'à la dernière ligne remplie, et colle cette section dans l'onglet Valeur-Sap en A5, et quand E2=Existant fait la même chose, mais envoi la section dans l'onglet Valeur-Existant.

Merci encore pour ton intérêt.

5audit-test.xlsm (274.88 Ko)

Re,

Tu dis

Quand E2= Neuf, copie la section B5:H5 jusqu'à la dernière ligne remplie, et colle cette section dans l'onglet Valeur-Sap en A5, et quand E2=Existant fait la même chose, mais envoi la section dans l'onglet Valeur-Existant.

A priori ... l'évènement est consitué par le choix que tu fais dans la cellule E2 dans l'onglet Sélection ...

Les destinations sont respectivement : l'onglet Valeur-Sap en A5 pour 'Neuf' et l'onglet Valeur-Existant en A5 pour 'Existant' ...

Le doute subsiste pour la SOURCE ... La section B5:H5 ...??? où est-elle ??? dans quel Onglet ???

Bonjour,

La source se trouve dans l'onglet Sélection. 1. Je sélectionne Neuf ou Existant, 2. j'enclenche le bouton Tri, suivi du bouton Filtrer, et là je souhaite récupérer l'info à partir de B5 à H5 jusqu'à la dernière ligne informée pour la reporter dans l'onglet selon le choix initiale.

A+

Bonjour,

La source se trouve dans l'onglet Sélection. 1. Je sélectionne Neuf ou Existant, 2. j'enclenche le bouton Tri, suivi du bouton Filtrer, et là je souhaite récupérer l'info à partir de B5 à H5 jusqu'à la dernière ligne informée pour la reporter dans l'onglet selon le choix initiale.

A+

Bonjour,

Merci pour tes explications ...

J'espère sincèrement que tu n'avais pas imaginé ... que je pouvais deviner toute ta procédure ... !!!

Bonjour James007,

Voilà, j'ai progressé, mais je peine à aller plus loin...

Pour le copier -coller, je souhaiterais récupérer uniquement la sélection du filtre à partir de "B5:H", et le copier dans la feuille en "A5:G" correspondant à la condition sélectionné en "E2".

Critéres : Neuf pour la feuille Valeur-Sap, Existant pour la feuille Valeur-Existant.

Pour l'heure, j'ai commencé sur une feuille test, le copier-coller fonctionne bien, mais le code sélectionne au delà de la dernière ligne de H.

Bref, merci de votre temps et votre générosité.

Tentative de code

Sub Coller()
'
'Coller-copier selon une condition dans la feuille dédiée à la condition
'Test à l'aide d'un bouton
'
'
'
'If ("E2" = "Existant") Then
Sheets("Sélection").Range("B5:H" & Range("H" & Rows.Count).End(xlUp).Row).Copy
    With Sheets("test")
        .Range("A5:H" & Range("H" & Rows.Count).End(xlUp).Row).PasteSpecial Paste:=xlPasteValues
        .Range("A5:H" & Range("H" & Rows.Count).End(xlUp).Row).PasteSpecial Paste:=xlPasteFormats
    End With

   'Else

'End If
Application.CutCopyMode = False
End Sub
6audit-test1.xlsm (310.43 Ko)

Bonjour à tous,

Comme la suite de ce poste concerne un sujet différent du poste initial, il vaut mieux le classer comme résolu.

Merci encore pour votre intérêt.

Re,

Content que tu aies pu résoudre ce problème ...

Merci pour te remerciements

Rechercher des sujets similaires à "lancer macro actualises feuille"