Correspondance cellule textbox vba

Fermé
toctocmilou Messages postés 1 Date d'inscription jeudi 11 octobre 2007 Statut Membre Dernière intervention 11 octobre 2007 - 11 oct. 2007 à 22:30
 zmus - 21 avril 2008 à 02:09
Bonjour,

J'ai Excel 2003
Je suis novice dans la programmation VBA et j'ai un souci
j'ai créé une userform avec 2 textbox
textbox1 = je saisi un nom (ex:DUPONT)
textbox2 = je saisi une date (ex:11/10/07)

j'ai une liste de noms dans une feuille excel nommée "tableau" dans la colonne C (de C4 à C....)
Mon problème est que je veux que la date se copie dans la colonne L, dans la cellule sur la ligne qui a le même
nom que j'ai saisi dans la textbox1

apres quelques heures de recherches personnelles et sur differents forums je sèche

Merci d'avance pour votre aide qui me sera très précieuse

Bonne continuation à tous
A voir également:

3 réponses

eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 7 239
12 oct. 2007 à 00:15
Bonsoir,

Tu peux commencer une bonne partie de ton programme en enregistrant une macro.
Sélectionne une cellule autre que C4 et démarre l'enregistrement de macro (menu 'outils / macro / nouvelle macro)
A partir de maintenant tout ce que tu feras au clavier ou à la souris sera enregistré...
Une petite fenetre avec 2 outils s'ouvre, un pour arreter l'enregistement, l'autre pour enregistrer les references en relatif, enfonce celui-ci pour etre en relatif
sélectionne C4
selectionne tout tes noms avec shift+ctrl+fleche_bas
Recherche un nom existant dans ta liste
arrete l'enregistrement

Maintenant dans un module de vba tu as la partie de programme recherche du nom.
remplace dedans le nom que tu as saisi par celui retourné par ton objet texte. (TextBox1.text ou TextBox1.value)
De plus tu as en cellule active la cellule où est ton nom. Tu peux récupérer la ligne par lig = activecell.row

Il te reste à écrire la date:
tu connais la colonne et la ligne, tu peux designer la cellule par cells(ligne,colonne)
et son contenu est la propriété .value
ce qui te donne cells(lig,12).value = textbox2.text (12 étant la colonne L)

J'ai détaillé mais de tete, il y a peut-etre qcq erreurs, t'apprendra encore plus en les cherchant ;-)

eric
0
voir le fichier ci-joint
0
Private Sub CommandButton1_Click()
Dim p As Integer
p = 4
While ComboBox1.Value <> Feuil1.Cells(p, 3)
p = p + 1
Wend
Feuil1.Cells(p, 12) = DTPicker1.Value
End Sub


dans la proptriété du ComboBox1.Value tu "Source row = feuil1!C4:C56636 ", ainsi tu peu visualiser sur une liste déroulante tous les nons déja saisient;
DTPicker: ça c'est un controle qui te facilite la tache de saisie des dates.

bonne chance
0