modifier une cellule en modifiant la bonne ligne

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

bonsoir le forum, le fil, merci Laetitia90, cela fonctionne, merci j'ai adapté sur mon projet professionnel et ça me conviens.
Je souhaiterai également te demander une modification sur la premiere demande, je joins le fichier afin que cela soit plus clair.
Merci de ton aide,
 

Fichiers joints

laetitia90

XLDnaute Barbatruc
Re : modifier une cellule en modifiant la bonne ligne

re,
j'ai rajoute un bouton "ajout" comme cela tu peus uniquement changer la textbox prix les autres textboxs sont bloquées pour eviter les erreur... tu utilise des textboxs renommées plus long pour coder enfin.. pour simplifier cela j'utilise tag des proprietées des controls concernées plus simple le code
 

Fichiers joints

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

Merci laetitia90, je vais mettre en application ton travail, j'espere etre capable de l' adapter a mon projet, je te remercie, j'espère que si je te re sollicite cela ne te dérangera pas? je vais essayer ce soir
Merci
 

laetitia90

XLDnaute Barbatruc
Re : modifier une cellule en modifiant la bonne ligne

re,:):):)
cela ne me gene pas du tout:)

dans l'exemple il faut bien comprendre tag
dans proprietés du controle tag du combo =0 les textboxs de 1 a 5
donc je boucle sur les controles dont tag est different de nothing
Code:
Private Sub Cb_marque_Click()
 For Each c In Controls
 If c.Tag <> "" Then Controls(c.Name).Value = Cb_marque.List(Cb_marque.ListIndex, c.Tag):beep
 Next
End Sub
c.tag par de 0 a 5 autant prendre en compte la combo on va l'utiliser par la suite .. quoique le beep autant le mettre sur ajout
pour ajout c'est pareil

Private Sub ajout_Click()
y = Feuil3.Cells.Find("*", , , , xlByRows, xlPrevious).Row + 1
For Each c In Controls
If c.Tag <> "" Then Feuil3.Cells(y, c.Tag + 1) = Controls(c.Name).Value
Next
End Sub
premiere ligne simple y= la premiere ligne vide de la feuille3

Cells(y, c.Tag + 1)
oblige de dire plus 1 autrement erreur on peut pas ecrire avant colonne a
c.tag=1 pour la premiere boucle =cells(y,1)
au 2 passage de la boucle
cells(y,2)
ect...
 

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

bonsoir , merci Laetitia90, j'avoue que l'ensemble des éléments que tu m'as apporté m'ont permis de voir qu'il est possible de faire encore plus simple ans le code, par contre cela nécessite des connaissances plus poussées dans VBA, malheureusement j'ai du mal a intégrer tout cela c'est pour ça que je sollicite régulièrement, j'essaye de me débrouiller et d'adapter.
Encore merci
Je vais tenter d'adapter, les infos que tu m'as données sur mon fichier, si cela t'intéresse je peux te faire parvenir mon fichier et tu pourrai me dire les parties à améliorer.
Bonne soirée
 

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

re Laetitia90;
voilà avec ton code j'ai bien compris le principe TAG,
effectivement cela réduit considérablement les lignes de code.
dans le code j'ai modifié afin que cela soit en accord avec mon fichier :

Dim t As Variant, y As Long, c As Control
Private Sub UserForm1_Initialize()
t = Formations.Range("a3:j" & Formations.Cells(Rows.Count, 1).End(xlUp).Row): Cb_marque.List = t
End Sub

si j'ai bien compris sur le code ci dessus, il détermine la zone liste où il va chercher les infos pour la combo box, et bien quand ke lance l'usf rien n'apparait


Private Sub Cb_marque_Click()
For Each c In Controls
If c.Tag <> "" Then Controls(c.Name).Value = Cb_marque.List(Cb_marque.ListIndex, c.Tag): Beep
Next
End Sub
Private Sub ajout_Click()
y = Prévision.Cells.Find("*", , , , xlByRows, xlPrevious).Row + 1
For Each c In Controls
If c.Tag <> "" Then Prévision.Cells(y, c.Tag + 1) = Controls(c.Name).Value
Next
End Sub
Private Sub CommandButton1_Click()
Unload Me
End Sub


Je joins le fichier allégé sur lequel je travaille se sera plus parlant que d'essayer de transposer les informations que tu me donne, je comprendrai mieux car plus adapté à ce que je fait.

Dans le projet il y a un usf appelé userform1 dans lequel j'ai voulu adapter ton code, il ne me sert pas dans le projet. Juste pour tester .
Merci encore de ta compréhension et de ton aide
 

Fichiers joints

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

Le forum, le fil, Laetitia90, encore moi, je joins le fichier avec plus d'explications afin que tu vois mieux mes zones d'ombre, merci encore
 

Fichiers joints

laetitia90

XLDnaute Barbatruc
Re : modifier une cellule en modifiant la bonne ligne

re, ):)
je viens de voir ton message qui correspond a ton last post
comme je comprends c'est pour les feuilles
SAISIE DES FORMATIONS PROGRAMMEES & Saisie_des_Formations_Réalisées

le peu que je vois tu as pas definis dans chaque controls tag c'est vide ??
c'est important dans vba d'activer la fenetre proprietées comme cela on voit tout quand tu selectionne un controls

Code:
[CODE]Private Sub UserForm_Initialize()
 t = Formations.Range("a3:j" & Formations.Cells(Rows.Count, 1).End(xlUp).Row): Cb_Boform.List = t
End Sub
[/CODE]
il vaut mieux appel sheet par sa proprietees name evite pas mal de pb... sheet renommé ect..

week -end oblige regarderais lundi
 
Dernière édition:

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

Ok merci Laetitia90, je vais essayer d'avancer aussi, par contre dans les usf formation programmée et réalisée je n'avais rien mis juste dans l'usf1 ou javais essayé de reproduire tes infos, je vais poursuivre et essayer aussi de comprendre, en attendant merci bon week end et à lundi
 

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

Bonjour, le forum, le fil, Laetitia90, j'ai pris en compte pas mal d'informations. J'ai refondu le fichier. Il doit être plus léger.
Il ne me manques plus que pour tes conseils, pour finaliser. Les infos relatives aux points à voir sont sur la feuil1 du fichier.
Merci encore pour ton aide.
Bonne reprise
 

Fichiers joints

laetitia90

XLDnaute Barbatruc
Re : modifier une cellule en modifiant la bonne ligne

re,:):)
en fonction du dernier fichier
j'ai ecris userform3 & userform1 different...... le plus simple user1 pour moi!! pas de tag
en regardant de plus pres il font la meme chose seule la destination est differente on pourrait en faire qu'un
dans acceuil quand tu selectionne 1 des 2 on modifie le titre& en fonction du titre label 12 on envoi feuil3 ou 5 c'est tout !!!
pas traite date tu avais un calender tu veus le laisser?? comment veus tu gérer cela

ps: pas la avant 22h
 

Fichiers joints

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

Re bonjour laetitia, merci pour ta réponse
Cela me parait plus intéressant de faire comme tu le proposes pour les USF, par contre je sais pas faire la compil entre les deux.
pour la date j'avais mis mdf Calendar, si cela marche pourquoi pas sauf si tu as autre chose à me proposer, l'essentiel est que la date soit reprise en mois et en semaine dans les textbox suivant et reportées dans les feuilles 3 et 5. J'ai continué a chercher et installé la xla de mdf calendar mais je n'arrive pas a convertir la date dans les texbox suivantes.
Merci encore pour ton aide, et effectivement ton idée doit alléger considérablement le fichier
je vais te renvoyer le fichier en ajoutant la xla
Bonne journée a toi
 

Fichiers joints

laetitia90

XLDnaute Barbatruc
Re : modifier une cellule en modifiant la bonne ligne

re,:):)
un version allégée un seul user pour les 2 ... je suis reste sur un calendar que je manipule mieux plus simple
 

Fichiers joints

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

Bonjour Laetitia90 et merci pour ta réponse, concernant le calendar il ne s'affiche pas chez moi, il me dit que l'objet n'est pas présent. De plus si j'ai bien compris ton code il s'agit de la date du jour qui s'affiche, et je souhaite pouvoir mettre n'importe qu'elle date Pour les autres userform, creaagent et creaformation, est possible d'utiliser le meme systeme que tu as utilisé avec les tags.
car sur ton exemple, la feuille creation agent et formation ne sont plus la.
Si je comprends il faut que je fasse un assemblage entre la version 8 et la 9
Je te remerci pour ton aide, j'espère que tu pourras poursuivre ton aide à mon projet.
Je vais essayer de consulter dans la journée, si tu as eu une possibilité, je vais être dans le TGV une bonne partie de la journée, je ne manquerai pas de voir.
Merci encore pour ton aide et ton efficacité,
je te demandai dans un post précedent qu'elle methode puis je utiliser afin d'apprendre le vba.
bonne journée
 

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

bonsoir laetitia90, pour l'ensemble du fichier ça a l'air ok le seul bug est pour le calendrier, il me dit impossible de charger l'objet car il n'est pas disponible sur cette machine.

j'ai essayé plusieurs solutions, car celle ci j'avais deja essayé avec calendar et toujours le meme probleme pas dispo sur la machine, puis j'ai essayé sur une de mes precedentes version un calendrier trouvé sur le forum, l'inconvénient il n'est pas fiable au niveau des dates le dernier en date est la xla de mdf ; mdf calendar qui fonctionne, le seul truc c'est que je ne sais pas récuperer la dat du textbox pour la convertir dans une autre textbox en mois et en semaine puis de les envoyer a la suite des autres items des formulaires formation réalisée et programmées.
Apriori le reste correspond tout a fait a mes attentes, merci encore, si tu as une idée pour ce soucis, sinon cette version me satisfait
merci encore pour ton aide ta disponibilité et efficacité
 

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

bsr, Laetitia90, si cela pose probleme avec la version de faire apparaitre un calendrier quel qu'il soit , autant faire simple et laisser la possibilité a l'utilisateur de rentrer manuellement la date dans la textbox, puis les autres textbox interpreterons l(info et je pense que se sera plus simple , car tu t'es deja beaucoup unvestie dans mon projet et u m'as beaucoup aider je ne veux pas te déranger davantage,
merci
tiens moi au courant
bonne soirée à toi
 

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

ncore moi vraiment désolé,
lorsque je lance par l'accueil saisie formations réalisée, que je sélectionne l'agent il y a une message d'erreur erreur compil objet ou bibliothèque introuvable, puis ça bloque l'userform et je suis obliger de tout fermer via le gestionnaire de taches, pareil pour le choix du code même message d'erreur, c'est identique sur la version formations programmées. sur ces 4 problemes la variable je pnse y est surlignée en bleu
Lorsque je lance l'userform statistique pareil ici le mot format est en bleu

voila pour les problèmes rencontrés qui ne me permettent pas d'utiliser le fichier, merci encore
 

laetitia90

XLDnaute Barbatruc
Re : modifier une cellule en modifiant la bonne ligne

re , un peu suprise dans le dernier fichier j'ai seulement fais une copy du fichier precedent en changeant le calendar regarde dans reference puis dans la liste un manquant .. a decocher. autrement avant de lancer supprime tout ce qui concerne le calendar ..regarde dans dans la boite a outils si tu as un calendar si non clic droit dedans controle suplementaires dans la liste controle calender12.0 ou autre version
 

altinea

XLDnaute Accro
Re : modifier une cellule en modifiant la bonne ligne

re bonjour laetitia je n'ai pas la main sur controle supplementaire, etn plus je ne vois pas dans comlements le calendar
le mieux est de faire comme je t'ai dit laisser l'utilisateur entrer la date manuellement
pour les autres erreurs tu en pense quoi ça bloque au lancement sur la variable "y", alors que sur les version 8 ça marche bien
 

Discussions similaires


Haut Bas