Bonjour,
Dans une feuille de calcul ("Engagements") il y 12 colonnes.
Col 1 (A) = un n° incrémenté
Col 2 (B) = une date de saisie
Col 3 (C) = un n° d'identification
Col 4 (D) = un n° d'engagement
Col 5 (E) = un n° de devis
Col 6 (F) = une autre date
Col 7 (G) = un n° de tiers
Col 8 (H) = nom du tiers
Col 9 (I) = un nom de site
Col 10 (J) = l'objet de demande
Col 11 (K) = un montant
Col 12 (L) = le demandeur
J'ai donc mis en place un UserForm avec 9 TextBox.
Le TextBox à partir duquel la recherche se fait s'appelle TextBoxEngt et correspond à la col D (en gras). Les autres TextBox portent le numéro de leur ligne (par exemple TextBox2 pour col 2).
Lorsque je clique sur le bouton "Valider" le message "Objet spécifié introuvable" apparaît sur la ligne
Voici le code complet :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Me.Controls("TextBox" & NoCol) = Cells(c.Row, NoCol)
Merci pour vos éclairages
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Private Sub CommandButton1_Click() Dim plage As Range, derlig As Long, c As Range, NoCol As Byte Dim FL1 As Worksheet 'Instanciation de la feuille de calculs Set FL1 = Worksheets("Engagements") 'Instanciation de la plage de données Set plage = FL1.Range("D1:D" & Split(FL1.UsedRange.Address, "$")(2)) 'recherche du numéro saisi dans TextBoxEngt With plage Set c = .Find(Me.TextBoxEngt) If Not c Is Nothing Then For NoCol = 1 To 12 Me.Controls("TextBox" & NoCol) = Cells(c.Row, NoCol) Next End If End With End Sub
Partager