Excel2003 Userform N° de ligne
macalée
-
macalée -
macalée -
Bonjour,
j'ai une fichier excel avec ces colonnes et un userForm
DATE_RECEP
MOY_TRANSP
NUM_VOYAGE
NUM_DISTR_EFS
NUM_DON
NUM_EPISODE
ID_PATIENT
Après avoir enregistrer les données dans les 5 1ére colonnes (soit de DATE_RECEP à NUM_DON) je veux compléter l'enregistrement des 2dernieres colonnes en étant positionné sur la bonne ligne en fonction du NUM_DON
je récupère bien le NUM_DON mais je n'arrive pas à modifier mon enregistrement en le complétant
Pouvez-vous m'aider?
merci par avance
BT
j'ai une fichier excel avec ces colonnes et un userForm
DATE_RECEP
MOY_TRANSP
NUM_VOYAGE
NUM_DISTR_EFS
NUM_DON
NUM_EPISODE
ID_PATIENT
Après avoir enregistrer les données dans les 5 1ére colonnes (soit de DATE_RECEP à NUM_DON) je veux compléter l'enregistrement des 2dernieres colonnes en étant positionné sur la bonne ligne en fonction du NUM_DON
je récupère bien le NUM_DON mais je n'arrive pas à modifier mon enregistrement en le complétant
Pouvez-vous m'aider?
merci par avance
BT
3 réponses
-
Bonsoir,
Je n'ai pas bien compris ta question mais d'après ton titre, ça doit pouvoir se résoudre avec la propriété ListIndex qui renvoie la position du champ de liste sélectionné.
https://silkyroad.developpez.com/VBA/ControlesUserForm/#LII-G
A+ -
Bonjour,
je vais essayer d'être plus précise.
j'enregistre sur une ligne les 5 premières colonnes via mon 1er userform.
Ensuite, à partir d'un 2éme userform, je rappelle les données de cette ligne en fonction du N° de don.
donc, je voudrais compléter la saisie de cette ligne avec le complément d'info saisi dans ce 2éme userform, mais pour cela,il faut que je soit bien positionné sur la bonne ligne.
J'ai ce début de code pour retrouver les infos à partir de mon N° de don
Private Sub Cmd_rech_Click()
Dim Trouve As Range
Dim ligne As Integer
'***********************************
If Txt_num_don.Value = "" Or Not IsNumeric(Txt_num_don.Value) Then Exit Sub
With Sheets("DONNEES")
Set Trouve = .Columns(5).Cells.Find(Txt_num_don.Value, lookat:=xlWhole)
If Trouve Is Nothing Then
MsgBox "Pas trouvé ce N°" & Txt_num_don.Value & " dansla feuille DONNEES du classeur Excel"
Exit Sub
Else
Txt_num_distr_efs.Value = Trouve.Offset(0, -1)
Txt_id_patient.Value = Trouve.Offset(0, 2)
Txt_nom.Value = Trouve.Offset(0, 3)
Txt_JF.Value = Trouve.Offset(0, 4)
txt_prenom.Value = Trouve.Offset(0, 5)
Txt_dt_nai.Value = Trouve.Offset(0, 6)
Txt_num_episode.Value = Trouve.Offset(0, 1)
End If
End With
Merci de bien vouloir m'orienter vers la méthode à adopter
BT -
Bonjour,
a mettre tout au debut du VBA UserForm2
Option Explicit
Dim Ligne
Set Trouve = .Columns(5).Cells.Find(Txt_num_don.Value, lookat:=xlWhole)
Ligne = Trouve.Row
Avec cela vous avez la ligne de votre enregistrement
Vous pourrez enregistrer les infos des TextBox sur la bonne ligne
Bonne suite