Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

controler l'envoi

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 !

vivi21

XLDnaute Occasionnel
Bonjour,

J'ai réalisé une fiche d'activité que chaque personne doive remplir mensuellement.
Je valide la fiche par un bouton qui permet d'envoyé le contenu dans un fichier commun excel.

Sachant que j'utilise la même fiche il faut que la personne pense à changer de mois aussi non elle va créer des doublons le fichier commun. Comment faire un controle pour afficher que la fichier du mois de janvier par exemple a déjà ete envoyé

merci pour vos conseils.
 
Re : controler l'envoi

Bonjour,
C'est totalement incompréhensible !
Difficile de te répondre sans une explication claire du processus
A+
kjin
 
Re : controler l'envoi

Voici la code vba et la fiche en pièce jointe.
Code:
Sub Transfert()
    MsgBox "Merci la fiche du mois de " & Range("E3") & " a été transférée à Véronique"
    Call Transfert_Generique("\\vg\PLANNING ACTIVITES CT\")
End Sub

Sub Transfert_CT()
    MsgBox "Merci la fiche du mois de " & Range("E3") & " a été insérée dans votre fichier EXCEL"
    Call Transfert_Generique("u:\")
End Sub

Sub Transfert_Generique(CheminBDD As String)
Dim LigneCible As Long, ligneOrigine As Long
Dim LigneFin As Long
Dim Données As Variant
Dim Nom As String
Dim Mois As String
Dim Trimestre As String
Dim Année As String
Dim Nbjoursmois As String
Dim Nbconges As String
Dim Nbformation As String
Dim Nbtrav As String
Dim Pointeur As Long


'Lecture des infos dans la fiche de saisie
Nom = ThisWorkbook.Worksheets("fiche_activite").Range("B3").Value
Mois = ThisWorkbook.Worksheets("fiche_activite").Range("E3").Value
Trimestre = ThisWorkbook.Worksheets("fiche_activite").Range("E4").Value
Année = ThisWorkbook.Worksheets("fiche_activite").Range("E5").Value
Nbjoursmois = ThisWorkbook.Worksheets("fiche_activite").Range("D6").Value
Nbconges = ThisWorkbook.Worksheets("fiche_activite").Range("D8").Value
Nbformation = ThisWorkbook.Worksheets("fiche_activite").Range("D10").Value
Nbtrav = ThisWorkbook.Worksheets("fiche_activite").Range("D12").Value
LigneFin = ThisWorkbook.Worksheets("fiche_activite").Range("A2000").End(xlUp).Row
Données = ThisWorkbook.Worksheets("fiche_activite").Range("A16:e" & LigneFin)
 
'Ecriture dans l'onglet Base de données BDD
 
' Le chemin sera à modifier en fonction de l'application
'CheminBDD = "//creai/doc_ct"
If Left(Dir(CheminBDD & "BDD.*"), 4) <> "BDD." Then
  Workbooks.Add
  Worksheets.Add
  ActiveSheet.Name = "BDD"
  Worksheets("BDD").Range("A1") = "Nom"
  Worksheets("BDD").Range("B1") = "Mois"
  Worksheets("BDD").Range("C1") = "Trimestre"
  Worksheets("BDD").Range("D1") = "Année"
  Worksheets("BDD").Range("E1") = "Nbjoursmois"
  Worksheets("BDD").Range("F1") = "Nbconges"
  Worksheets("BDD").Range("G1") = "Nbformation"
  Worksheets("BDD").Range("H1") = "Nbtrav"
 
  ThisWorkbook.Worksheets("fiche_activite").Range("A15:E15").Copy Destination:=Worksheets("BDD").Range("I1:M1")
  ActiveWorkbook.SaveAs Filename:=CheminBDD & "BDD.xls"
 Else
  Workbooks.Open Filename:=CheminBDD & "BDD.xls"
End If
LigneCible = Workbooks("BDD.xls").Worksheets("BDD").Range("A65535").End(xlUp).Row + 1

Select Case Mois
    Case "Janvier", "Février", "Mars"
        Trimestre = "T1"
    Case "Avril", "Mai", "Juin"
        Trimestre = "T2"
    Case "Juillet", "Aoüt", "Septembre"
        Trimestre = "T3"
    Case "Octobre", "Novembre", "Décembre"
        Trimestre = "T4"
End Select

' Boucle répétitive pour le nom
For Pointeur = LigneCible To LigneCible + UBound(Données) - 1
 Range("BDD!A" & Pointeur) = Année
 Range("BDD!B" & Pointeur) = Trimestre
 Range("BDD!C" & Pointeur) = Mois
 Range("BDD!D" & Pointeur) = Nom
 Range("BDD!E" & Pointeur) = Nbjourstrav
 Range("BDD!F" & Pointeur) = Nbconges
 Range("BDD!G" & Pointeur) = Nbformation
Next Pointeur
'Copie globale de la zone saisie
Workbooks("BDD.xls").Worksheets("BDD").Range("I" & LigneCible & ":M" & LigneCible + UBound(Données) - 1) = Données
Workbooks("BDD.xls").Close True

End Sub

Dès que je valide avec le bouton je souhaite contrôler en même temps que la personne n'est pas saisie la fiche deux fois sur le même mois.

Est ce que c'est plus clair?
 

Pièces jointes

  • Capture.jpg
    43.8 KB · Affichages: 33
  • Capture.jpg
    43.8 KB · Affichages: 45
  • Capture.jpg
    43.8 KB · Affichages: 39
Re : controler l'envoi

Re,
Difficile de te répondre sans une explication claire du processus
Tu ne réponds pas à la question...

Dès que je valide avec le bouton je souhaite contrôler en même temps que la personne n'est pas saisie la fiche deux fois sur le même mois.
Tes fautes de syntaxe n'aident pas non plus
Est-ce...
Dès que je valide avec le bouton je souhaite contrôler en même temps que la personne (!) n'a pas saisi la fiche deux fois sur le même mois.
...ou plutôt
Dès que je valide avec le bouton je souhaite contrôler en même temps que la fiche de la personne (!) ne sera pas saisie deux fois sur le même mois.
En outre, ne serait-il pas plus logique de vérifier avant toute chose ?!
Et dans tous les cas, comment vérifier les données si l'on a pas un exemple du fichier de destination ?
A+
kjin
 
- 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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…