Ajouter des documents

FaruSZ

XLDnaute Occasionnel
Bonjour,
Je sais j'ai déjà poser cette question mais j'ai pas eu de réponses :/
Alors je veux ajouter des documents a quelques elements dans une base de données.
J'ai une liste de formations avec les documents associés.
Je veux ajouter des documents a ces formations sans créer des doublons dans ma base.
J'ai réussi a faire le code de dessous, il me rajoute la même formation avec le document que j'ai choisi mais il garde l'ancienne formation moi je veux écraser l'ancienne formation et rajouter le document:
c'est a dire si j'ai une formation A, avec la date et je veux rajouter un document a la formation A, mon code me rajoute : formation A, date, lien pour le document comme
dans la photo
Capture.JPG


Private Sub Sub_Ajout_Mdp_Forma_Click()
If mode_edition = True Then
If Me.ListBox_Form_Intern.ListIndex = -1 Then
MsgBox ("Pour ajouter le mode de preuve veuillez choisir une formation")
Else
Set ws = ActiveWorkbook.Worksheets(Personne)
Nom_Forma = Me.ListBox_Form_Intern.List(Me.ListBox_Form_Intern.ListIndex, 0)
Date_Forma = Me.ListBox_Form_Intern.List(Me.ListBox_Form_Intern.ListIndex, 1)
Fin_Col_Forma = ws.Cells(10, 256).End(xlToLeft).Column
Dim plage As Range
Set ws = ActiveWorkbook.Worksheets(Personne)
Set plage = ws.Rows(10)
Set Trouve = plage.Cells.Find(what:=Nom_Forma)
If Trouve Is Nothing Then
Else
If MsgBox("la formation existe déjà, Voulez vous l'écraser pour ajouter le mode de preuve?", vbYesNo + vbExclamation + vbDefaultButton2, "Titre") = vbYes Then
ws.Cells(10, Fin_Col_Forma).Value = Nom_Forma
Cells(10, Fin_Col_Forma).Select
ws.Activate
ws.Cells(11, Fin_Col_Forma).Value = CDate(Date_Forma)
repertoire = Application.GetOpenFilename()
ws.Cells(12, Fin_Col_Forma) = repertoire
Else
MsgBox (" Vous n'avez pas les droits requis")
End If
End If
End If
End If
End Sub
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    11.7 KB · Affichages: 20

FaruSZ

XLDnaute Occasionnel
La solution:
If mode_edition = True Then
If Me.ListBox_Form_Intern.ListIndex = -1 Then
MsgBox ("Pour ajouter le mode de preuve veuillez choisir une formation")
Else
Set ws = ActiveWorkbook.Worksheets(Personne)
Nom_Forma = Me.ListBox_Form_Intern.List(Me.ListBox_Form_Intern.ListIndex, 0)
Date_Forma = Me.ListBox_Form_Intern.List(Me.ListBox_Form_Intern.ListIndex, 1)
Fin_Col_Forma = ws.Cells(10, 256).End(xlToLeft).Column
Dim plage As Range
Set ws = ActiveWorkbook.Worksheets(Personne)
Set plage = ws.Rows(10)
Set Trouve = plage.Cells.Find(what:=Nom_Forma)
If Trouve Is Nothing Then
Else
If MsgBox("la formation existe d?j?, Voulez vous l'?craser pour ajouter le mode de preuve?", vbYesNo + vbExclamation + vbDefaultButton2, "Titre") = vbYes Then
ws.Cells(10, Trouve.Column).Value = Nom_Forma
' Cells(10, Trouve.Column).Select
' ws.Activate
ws.Cells(11, Trouve.Column).Value = CDate(Date_Forma)
repertoire = Application.GetOpenFilename()

ws.Cells(12, Trouve.Column) = repertoire
Else
MsgBox (" Vous n'avez pas les droits requis")
End If
End If
End If
End If
End sub


il faut remplacer le Fin_Col_Forma dans le else par Trouve.column et commenter ws.activate and Cells(10, Trouve.Column).Select
 

Discussions similaires

Réponses
5
Affichages
365
Réponses
4
Affichages
585

Statistiques des forums

Discussions
311 725
Messages
2 081 948
Membres
101 850
dernier inscrit
Danigra