Excel+vba code casse tete
Résolu
thierrymalagnou
Messages postés
49
Date d'inscription
Statut
Membre
Dernière intervention
-
thierrymalagnou Messages postés 49 Date d'inscription Statut Membre Dernière intervention -
thierrymalagnou Messages postés 49 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Excel+vba code casse tete
- Code ascii - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
2 réponses
selon moi essaye d'enregistrer le nom dans une variable
ensuite fais un test dans ta base de donnée sur la colonne avec tous les noms
si le contenu de la cellule testée correspond au nom
la fonction "activecell.row" te permet te récuperer le numéro de la ligne dans une variable nommée par exemple v1
ensuite avec tu crées une autre variable v2 par exemple
le code " v2 = Range("A" & v1)" enregistre dans la variable v2
le contenu de la cellule située dans la colonne A à la ligne que tu as récupérée
de cette façon tu peux récupérer toutes les données dont tu as besoin.
pour les restituer
choisis une feuille
ensuite il faut chercher la dernière ligne remplie avec la fonction "selection.end(xldown)"
tu crées ensuite une autre variable v3 qui renvoie la ligne à laquelle tu insers tes informations :
avec le code "v3 = selection.end(xldown) + 1"
enfin " Range("A" & v3) = v2 " écrit dans la case située dans la colonne A à la premièe ligne vide la donnée récupérée dans la variable v2
ainsi tu pourras récupérer les noms prénoms et salaires pour les copier où tu veux les uns à la suite des autres.
j'esrpère avoir bien compris ton problème et que ma réponse t'aidera.
ensuite fais un test dans ta base de donnée sur la colonne avec tous les noms
si le contenu de la cellule testée correspond au nom
la fonction "activecell.row" te permet te récuperer le numéro de la ligne dans une variable nommée par exemple v1
ensuite avec tu crées une autre variable v2 par exemple
le code " v2 = Range("A" & v1)" enregistre dans la variable v2
le contenu de la cellule située dans la colonne A à la ligne que tu as récupérée
de cette façon tu peux récupérer toutes les données dont tu as besoin.
pour les restituer
choisis une feuille
ensuite il faut chercher la dernière ligne remplie avec la fonction "selection.end(xldown)"
tu crées ensuite une autre variable v3 qui renvoie la ligne à laquelle tu insers tes informations :
avec le code "v3 = selection.end(xldown) + 1"
enfin " Range("A" & v3) = v2 " écrit dans la case située dans la colonne A à la premièe ligne vide la donnée récupérée dans la variable v2
ainsi tu pourras récupérer les noms prénoms et salaires pour les copier où tu veux les uns à la suite des autres.
j'esrpère avoir bien compris ton problème et que ma réponse t'aidera.
cependant j ai procédé d'une autre facon.
en fait dans le formulaire ou il y a les information j'ai ajouté un commandouton qui lorsque je l'active cela ouve un formulaire qui reprend le nom prénom et salaire de la personne.
tout marche mais un seul problème perdure. c'est que ca ne prend pas automatique ment le nom prénom et salaire de la personne dans le deuxième formulaire, je suis obligé de les entrer manuellement. aprés quand je valide cela fait apparaitre l information sur une autre feuille comme désiré.
si tu as une idéé cela pourrait me sauver la vie ;)
merci beaucoup
bonne journée
dans la procédure initialize de cette userform
tu peux reprendre des données et les afficher
il te suffit de dire où reprendre cette donnée (cellule ou variable)
saurais tu par hasard a l'aide d un code comment ouvrir un autre fichier excel et aller dans un onglet précis ?
merci
Workbooks.Open Filename:="C:\*.doc"
sheets("*").select
tu peux définir le nom du dossier, le nom du classeur, le nom de l'onglet par des variables :
par exemple ouvrir l'onglet "bonjour" dans le classeur "tata" dans le dossier "toto"
variable1 = toto
variable2 = tata
varaible3 = bonjour
Workbooks.Open Filename:="C:\" & variable1 & "\" & variable2 & ".xls"
sheets(variable3).select
de cette façon tu peux ouvrir le fichier correspondant à des données précises
j ai une dernière question. voici un code qui apparait dans un userform composé d'un combobox.
Private Sub txtIni_Click()
Sheets(txtIni.Value).Activate
End Sub
Private Sub txtIni_DropButtonClick()
txtIni.Clear
For Each vfeuille In ActiveWorkbook.Sheets
txtIni.AddItem vfeuille.Name
Next
End Sub
il me permet de charger dans la combobox les onglets de la feuille excel.
en fait je souhaiterais qu'il charge le nom des onglets d'un autre fichier excel qui s'ouvrirait en même temps.
c'est pour cela que j ai posé a la base cette question mais je me rends compte que c est plus compliqué que ca.
as tu une idée ?
merci