XL 2019 Mise à jour via formulaire

counterbob

XLDnaute Nouveau
Bonjour, j'ai un formulaire de saisie et de modification des valeurs sur une feuille "BD"
Je souhaiterais que les valeurs saisies mettent aussi à jour les valeur sur une autre feuille "Factures"
- les 6 premières colonnes sont identiques
- sur le formulaire la recherche est effectuée sur la colonne "D" sans doublon
- La colonne "D" de la feuille "Facture" contient des doublons.
Je souhaiterais que lors de la mise à jour de la feuille BD toutes les lignes correspondants à la valeur trouvée colonne "D" soient mise à jour également.
Je mets le code de mise à jour.
Merci pour une piste


VB:
Private Sub B_validation_Click()
  If Me.nom = "" Then
     MsgBox "Saisir un nom"
     Me.nom.SetFocus
     Exit Sub
  End If
  If Not IsDate(Me.Date) Then
     MsgBox "Saisir une date "
     Me.Date.SetFocus
     Exit Sub
  End If

  '--- Transfert Formulaire dans BD
   '-- Gr
   temp = ""
   For Each c In Me.Gr.Controls
     If c.Value = True Then
       temp = c.Caption
     End If
   Next c
   f.Cells(ligneEnreg, 1) = temp
 
   '-- Magasin
   temp = ""
   For Each c In Me.Mag.Controls
     If c.Value = True Then
       temp = c.Caption
     End If
   Next c
   f.Cells(ligneEnreg, 8) = temp
   With f
   On Error Resume Next
   f.[A1].Sort key1:=[D2], Order1:=xlAscending, Header:=xlGuess
   End With
   f.Cells(ligneEnreg, 2) = UCase(Me!nom)
   f.Cells(ligneEnreg, 3) = Application.Proper(Me.Prenom)
   f.Cells(ligneEnreg, 4) = UCase(Me!nom) & "_" & Application.Proper(Me.Prenom)
   f.Cells(ligneEnreg, 5) = Me.Service
   f.Cells(ligneEnreg, 6) = CDate(Me.Date)
   f.Cells(ligneEnreg, 7) = Me.Tel
 
   Columns("F:F").NumberFormat = "m/d/yyyy" 'format date courte
   End Sub
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil

counterbob
Juste pour infos
(et pour ce qui me concerne, pour passer le temps)
Une autre façon "raccourcie" de renvoyer les valeurs dans la feuille
Ci-dessous ma syntaxe utilisée pour mon test.
VB:
Private Sub CommandButton1_Click()
Dim Valeurs
With Application
    Valeurs = Array(UCase(nom), .Proper(Prenom), UCase(nom) & "_" & .Proper(Prenom), Service, CDate(tbDate), tbTel)
End With
ligneEnreg = 5 ' pour test
Cells(ligneEnreg, 2).Resize(, 6) = Valeurs
End Sub
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa