Modification/Suppression simultanée sur 2 tableaux structurés

Bonjour à tous,

J’essaie d’enregistrer la modification/suppression sur 2 tableaux structurés simultanément à partir de la sélection d’une ligne dans l’un ou l’autre onglet qui concerne un seul et même poste (Onglet BDD_E pour la saisie des entrées des agents recrutés sur les postes et dans l’onglet BDD_S qui recense les sorties des agents sur ces mêmes postes).

Certains et je les en remercie m’ont proposé une solution sans les TS.

Je voudrais avoir votre aide pour y parvenir tout en gardant la notion de tableaux structurés. L’utilisation de la fonction « Application.Match » me paraît prometteuse…mais je ne m’en sors pas je n’ai que des erreurs.

Merci à ceux qui voudront bien m’aider (en PJ la version simplifiée du projet).

Bonjour,

La suppression c'est via l'USF et vous avez toujours des infos dans la partie Entree et la partie sortie ?

Cette question parce que dans votre fichier le code 24 par exemple ne comporte pas parfois les mêmes données en entrée et en sortie

Bonjour Dan,

Effectivement je passe par l'USF pour saisir les éléments.

Quand un agent part je crée la ligne (une numérotation automatique se fait via N° par ordre de création).

Ce numéro est commun avec l'entrée (je rentre dans le même USF la prévision de recrutement du remplaçant.

Quand j'enregistre ces deux saisies, les données "Sortie" vont dans BDD_S et celles relatives à la prochaine entrée dans BDD_E et ces deux lignes ont le même N°.

Ce sont les lignes (en Entrée et sortie) que je voudrais récupérer pour la modification ou la suppression. (Je précise que les deux onglets peuvent être trié différemment donc il faudrait récupérer les lignes dont le N° est recherché).

Je ne sais pas si c'est plus clair.

Dans votre USF remplacez le code par celcui-ci

Private Sub BtnSuppr_Click()
Dim lig As Integer

If MsgBox("Confirmez-vous la suppression de l'enregistrement " & TxtNum.Value & " ?", vbYesNo + vbCritical, "Suppression enregistrement") = vbYes Then
    On Error Resume Next
    lig = WorksheetFunction.Match(CDbl(TxtNum.Value), Lo_S.ListColumns(1).DataBodyRange, 0)
    If lig > 0 Then Lo_S.ListRows(lig).Range.Delete: lig = 0

    lig = WorksheetFunction.Match(CDbl(TxtNum.Value), Lo_E.ListColumns(1).DataBodyRange, 0)
    If lig > 0 Then Lo_E.ListRows(lig).Range.Delete
End If

Unload Me
Worksheets("Interface").Activate
End Sub

Si ok pensez à

Bonsoir à tous,

Merci beaucoup Dan, ça fonctionne très bien sur mon fichier simplifié.

J'ai modifié également le code pour la Modification sur le même modèle que la Suppression.

Bonne soirée, et encore merci.

Rechercher des sujets similaires à "modification suppression simultanee tableaux structures"