Ajouter des documents

  • Initiateur de la discussion Initiateur de la discussion FaruSZ
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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: 21
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
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
362
Réponses
1
Affichages
467
Retour