Besoin d'aide VBA Excel / UserForm
Résolu/Fermé
Sweetclau
Messages postés
7
Date d'inscription
mercredi 20 décembre 2017
Statut
Membre
Dernière intervention
17 janvier 2018
-
20 déc. 2017 à 04:27
Sweetclau - 24 déc. 2017 à 02:07
Sweetclau - 24 déc. 2017 à 02:07
A voir également:
- Besoin d'aide VBA Excel / UserForm
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si et excel - Guide
- Déplacer une colonne excel - Guide
- Excel compter cellule couleur sans vba - Guide
3 réponses
Sweetclau
Messages postés
7
Date d'inscription
mercredi 20 décembre 2017
Statut
Membre
Dernière intervention
17 janvier 2018
20 déc. 2017 à 06:25
20 déc. 2017 à 06:25
Voici mon code. Je suis consciente que j'ai probablement fait plusieurs erreurs...
Private Sub CmdFermer_Click()
'Programme créé par Claudia Mathieu
'Programme créé le 19 décembre 2017
'Programme modifié le 19 décembre 2017
'Bouton qui sert à fermer le formulaire et à inscrire les informations saisies dans la feuille Dossier employé
'Déclaration des variables
Dim Titre As String
Dim Prenom As String
Dim Nom As String
Dim NoEmploye As Integer
Dim DateNaissance As Date
Dim NAS As String
Dim Adresse As String
Dim Ville As String
Dim CodePostal As String
Dim Telephone As String
Dim Courriel As String
Dim DateEmbauche As Date
Dim Anciennete As Long
'Attribution des variables
Anciennete = DateDiff("y", Date, txtDateEmbauche)
Titre = CmbTitre.Value
Nom = TxtNom.Value
Prenom = TxtPrenom.Value
NoEmploye = TxtNoEmploye.Value
DateNaissance = TxtDateNaissance.Value
NAS = TxtNAS.Value
Adresse = TxtAdresse.Value
Ville = TxtVille.Value
CodePostal = TxtCodePostal.Value
Telephone = TxtTelephone.Value
Courriel = txtCourriel.Value
DateEmbauche = txtDateEmbauche.Value
'Insérer les valeurs des variables dans une cellule précise
Range("B3").Value = frmDossierEmploye.CmbTitre
Range("D3").Value = frmDossierEmploye.TxtNom
Range("F3").Value = frmDossierEmploye.TxtPrenom
Range("B4").Value = frmDossierEmploye.TxtNoEmploye
Range("D4").Value = frmDossierEmploye.TxtDateNaissance
Range("F4").Value = frmDossierEmploye.TxtNAS
Range("B5").Value = frmDossierEmploye.TxtAdresse
Range("D5").Value = frmDossierEmploye.TxtVille
Range("F5").Value = frmDossierEmploye.TxtCodePostal
Range("B6").Value = frmDossierEmploye.TxtTelephone
Range("D6").Value = frmDossierEmploye.txtCourriel
Range("B7").Value = frmDossierEmploye.txtDateEmbauche
Range("D7").Value = frmDossierEmploye.txtAnciennete
End Sub
Private Sub UserForm_Initialize()
'Programme créé par Claudia Mathieu
'Programme créé le 5 décembre 2017
'Programme modifié le 5 décembre 2017
'Programme qui sert à choisir par une zone de liste le titre de l'employé
CmbTitre.AddItem "Monsieur"
CmbTitre.AddItem "Madame"
End Sub
Private Sub CmdFermer_Click()
'Programme créé par Claudia Mathieu
'Programme créé le 19 décembre 2017
'Programme modifié le 19 décembre 2017
'Bouton qui sert à fermer le formulaire et à inscrire les informations saisies dans la feuille Dossier employé
'Déclaration des variables
Dim Titre As String
Dim Prenom As String
Dim Nom As String
Dim NoEmploye As Integer
Dim DateNaissance As Date
Dim NAS As String
Dim Adresse As String
Dim Ville As String
Dim CodePostal As String
Dim Telephone As String
Dim Courriel As String
Dim DateEmbauche As Date
Dim Anciennete As Long
'Attribution des variables
Anciennete = DateDiff("y", Date, txtDateEmbauche)
Titre = CmbTitre.Value
Nom = TxtNom.Value
Prenom = TxtPrenom.Value
NoEmploye = TxtNoEmploye.Value
DateNaissance = TxtDateNaissance.Value
NAS = TxtNAS.Value
Adresse = TxtAdresse.Value
Ville = TxtVille.Value
CodePostal = TxtCodePostal.Value
Telephone = TxtTelephone.Value
Courriel = txtCourriel.Value
DateEmbauche = txtDateEmbauche.Value
'Insérer les valeurs des variables dans une cellule précise
Range("B3").Value = frmDossierEmploye.CmbTitre
Range("D3").Value = frmDossierEmploye.TxtNom
Range("F3").Value = frmDossierEmploye.TxtPrenom
Range("B4").Value = frmDossierEmploye.TxtNoEmploye
Range("D4").Value = frmDossierEmploye.TxtDateNaissance
Range("F4").Value = frmDossierEmploye.TxtNAS
Range("B5").Value = frmDossierEmploye.TxtAdresse
Range("D5").Value = frmDossierEmploye.TxtVille
Range("F5").Value = frmDossierEmploye.TxtCodePostal
Range("B6").Value = frmDossierEmploye.TxtTelephone
Range("D6").Value = frmDossierEmploye.txtCourriel
Range("B7").Value = frmDossierEmploye.txtDateEmbauche
Range("D7").Value = frmDossierEmploye.txtAnciennete
End Sub
Private Sub UserForm_Initialize()
'Programme créé par Claudia Mathieu
'Programme créé le 5 décembre 2017
'Programme modifié le 5 décembre 2017
'Programme qui sert à choisir par une zone de liste le titre de l'employé
CmbTitre.AddItem "Monsieur"
CmbTitre.AddItem "Madame"
End Sub
thev
Messages postés
1969
Date d'inscription
lundi 7 avril 2008
Statut
Membre
Dernière intervention
17 mars 2025
710
20 déc. 2017 à 12:39
20 déc. 2017 à 12:39
Bonjour,
ceci serait mieux
ceci serait mieux
Anciennete = DateDiff("yyyy", txtDateEmbauche, Date)
Kalissi
Messages postés
218
Date d'inscription
jeudi 2 mai 2013
Statut
Membre
Dernière intervention
15 juillet 2019
20
20 déc. 2017 à 16:16
20 déc. 2017 à 16:16
Bonjour,
Tu peux aussi te créer un fonction personnalisé que tu place dans un module :
Ainsi, au lieu d'affecter la cellule :
Range("D7").Value = frmDossierEmploye.txtAnciennete
Tu y place la fonction :
=Anciennete(B7)
L'instruction Application.Volatile permet une mise à jour instantanée.
Dès que B7 est modifié, D7 est mis à jour.
K
Tu peux aussi te créer un fonction personnalisé que tu place dans un module :
Public Function Anciennete(ByVal Cible As Range) As Date Application.Volatile Anciennete = DateDiff("yyyy", Cible.Value, Date) End Function
Ainsi, au lieu d'affecter la cellule :
Range("D7").Value = frmDossierEmploye.txtAnciennete
Tu y place la fonction :
=Anciennete(B7)
L'instruction Application.Volatile permet une mise à jour instantanée.
Dès que B7 est modifié, D7 est mis à jour.
K