modifier une cellule en modifiant la bonne ligne

altinea

XLDnaute Accro
Bonsoir le forum,
Je sollicite votre aide afin de résoudre mon petit soucis.
Voilà vous trouverez en fichier joint un petit exemple de ce que je souhaiterai réaliser.
1 userform
1 combobox et 2 textbox, en fonction de la sélection de la combobox s'affichent dans les deux textbox ce ui figure dans les colonnes adjacentes de la colonne 1.
La texbox 3 elle je souhaiterai pouvoir entrer la valeur de mon choix, le seul inconvénient c'est que cela me modifie la ligne choisie.
je suis sous 2010 mais le fichier je lai enrgistré en version 2003 afin qu'il soit exploitable par le plus grand nombre
Merci pour votre aide
 

Pièces jointes

  • alti.xls
    50.5 KB · Affichages: 181
  • alti.xls
    50.5 KB · Affichages: 187
  • alti.xls
    50.5 KB · Affichages: 181

laetitia90

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

re , comme je comprends dans la listbox tu veus afficher que certaines colonnes quand click sur combo.. nom

code ,durée , formateur & mois
dans ce cas on peut exploiter ColumnWidths en mettant 0 au colonne pas voulu

ListBox1.ColumnWidths = "0 pt;70 pt;0 pt;50 pt;0 pt;70 pt;0 pt;70 pt;0 pt "
pour le format pas simple la methode listbox.list aime pas bien les formats
je vais essayer de trouver une solution acceptable pas simple
 

laetitia90

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

re ,
peut être une solution mais avec excel 2010 je sais pas si cela va marcher??

Code:
Private Sub nom_Click()
  ListBox1.ColumnWidths = "0 pt;70 pt;0 pt;50 pt;0 pt;70 pt;0 pt;70 pt;0 pt "
  t = Sheets("Feuil3").Range("a2:r" & Sheets("Feuil3").Cells(Rows.Count, 1).End(xlUp).Row).Value
  X = 1
  For i = 1 To UBound(t)
  If t(i, 1) = nom.Value Or t(i, 11) = "Code" Then
  Te2 = t(i, 2): Te3 = t(i, 3): Te4 = t(i, 4): Te5 = t(i, 5): Te10 = t(i, 10)
  t(i, 17) = Format(t(i, 16), "mmmm")
  ReDim Preserve T2(10 To 18, 1 To X)
  For k = 10 To 18
  T2(k, X) = t(i, k)
  Next k: X = X + 1: End If: Next i
  ListBox1.List = Application.Transpose(T2)
  ListBox1.ListIndex = 0
  Erase t, T2
  C2 = "": T1 = ""
End Sub
 

altinea

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

re, à priori ça fonctionne, j'ai réussi à identifier les colonnes et comme tu l'avcais suggéré en mettant en largeur de colonne 0, ça marche, j'ai vu dans ton dernier code comment faire pour le format et là aussi ça fonctionne.
Je vais mettre cela en application dès cet après midi. Merci
 

altinea

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

Re Laetitia90, tout à bien fonctionné, merci encore, je vais donc le mettre en service sur mon lieu de travail j'espère que je n'aurai pas trop de retours de bugs, je pense en avoir fait le tour mais bon. je te souhaite une agréable journée et un bon weekend
 

altinea

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

Re bonjour Laetitia90,
en utilisant le fichier, j'ai noté deux petits points.
1- lorsque je valide la création dans les USF1, il crée effectivement correctement par contre le prénom est en minuscule. D'où mon problème, serait'il possible que le nom et le prénom soient en majuscules. en effet quand je verifie les formations par agents, il 'n apparait deux, un avec nom en majuscule prenom minuscule et un autre avec prenom majuscules. Ce qui fait que j'ai un double affichage.
2- lorsque ej valide une formation réalisée, lors de la retranscription dans la feuil3, il me met janvier systématiquement au liue du mois correspondant à la date de réference.Il affiche malgré tout dans la textbox de l'usf le bon numéro de mois, est il possible d'afficher le mois en lettre dans la textbox et qu'il soit bien retranscrit dans la cellule avec le bon mois.


je joins le fichier afin que cela soit plus clair

Merci

Bonne journée
 

Pièces jointes

  • alti-14.xls
    772.5 KB · Affichages: 77

laetitia90

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

re, pour les majuscules j'ai corrige empeche de taper miniscules dans modi agent cree new agent par la meme occasion j'ai corrige dans les feuilles par macro
par contre pour la date je suis aveugle j'ai jamais pu le tester marche pas chez moi
le numero de semaines est correct si ok on pourrait partir de la ...modifier Tb_mois en fonction de tb semaine
apres pour copier plus simple
 

Pièces jointes

  • alti-15.xls
    727 KB · Affichages: 79

laetitia90

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

re,
j'ai tester cela en taper directement la date dans la cellule vu que je peus pas utiliser ton calendar

Code:
Private Sub Tb_date_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Tb_mois = MonthName(Month(Tb_date))
Tb_semaine = DatePart("ww", (Tb_date), vbMonday, vbFirstFourDays)
End Sub

puis dans ajout

'copie les informations, date, mois, semaine sur les cellules 16;17;18 de la feuil3
Code:
  .Cells(z, 16) = Tb_date
    .Cells(z, 17) = Tb_mois.Value
    .Cells(z, 18) = Tb_semaine.Value

chez moi ok maintenant il faut tester avec ton calendar
Code:
Private Sub Tb_date_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Cancel = True
    mDFXLcalShow CalCtrl:=Tb_date, CalFormat:="dd/mm/yyyy", CalLang:="FR"
    'et copie dans les texbox associées le mois
    Tb_mois = MonthName(Month(Tb_date))
    'la semaine de l'année
    Tb_semaine = DatePart("ww", (Tb_date), vbMonday, vbFirstFourDays)
End Sub
 

altinea

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

re bonjour,
Je viens de faire les modifs que tu me proposes, et cela fonctionne;
je suis désolé j'ai une autre demande, lorsque je vais sur l'usf formation réalisées, et je je tape dans la combo le nom, il me propose des noms au fur et à mesure que j'écris. L'inconvénient c'est qu'une fois que j'arrive sur le bon nom il ne le prends pas en compte les infos ne s'affichent pas, si je descend sur le nom suivant pour revenir sur le nom concerné ca buge (message : Erreur d'exécution '-214753571 (80020005)' : impossible définir la propriété value. Le type ne correspond pas..

Par contre si j'utilise l'ascenseur et je clic sur le nom là il prends en compte, une solution serait de ne plus donner la possibilité de la fonction matchentry.

un dernier point, la fonction tri dans Ajout, a priori ne fonctionne plus? étrange
Feuil3.Range("a3:r60000").Sort Key1:=Feuil3.Range("a3"), Order1:=xlAscending, Header:=xlGuess


merci ça urge pas, c'est qu'en utilisant il apparait ce genre de soucis, plusieurs personnes ont accès donc utilsent de façon optimale

Bonne journée
 

laetitia90

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

re ,tu parles de userform1
si userform1
la ligne il faut la mettre avant end with
.Calculation = xlCalculationAutomatic: .ScreenUpdating = True: .DisplayAlerts = True
.Range("a3:r60000").Sort Key1:=.Range("a3"), Order1:=xlAscending, Header:=xlGuess
End With

je suis désolé j'ai une autre demande, lorsque je vais sur l'usf formation réalisées, et je je tape dans la combo le nom, il me propose des noms au fur et à mesure que j'écris. L'inconvénient c'est qu'une fois que j'arrive sur le bon nom il ne le prends pas en compte les infos ne s'affichent pas, si je descend sur le nom suivant pour revenir sur le nom concerné ca buge (message : Erreur d'exécution '-214753571 (80020005)' : impossible définir la propriété value. Le type ne correspond pas..
pour le reste idem tu parles userform1 ou 3 ??
 

altinea

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

re, pour la seconde question, le problème est identique à l'usf 1 et 3, pour le moment je pense que le probleme doit également venir du fait que nous tournons avec du 2010 et 2002, d'ici quelques jours cela devrait etre résolu l'ensemble du parc seras sur 2010 et seven.
Mais en attendant malheureusement ça beuge, si tu peux tu regarde sinon ça devrait faire, je bloquerai la fonction matchentry

merci encore
 

laetitia90

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

re pour le moment bloque tout ....tu vas passer de excel 2002 a excel 2010 enorme!!!! & windows 7 vu que tu bosses pour une entreprise surement la version 64 bits je pense ....cela change encore beaucoup de choses entre la version 32 & 64 bits attention au surprises pour moi... bien mieux attendre
ps: j'ai commence avec excel 2002 deja grosse difference avec 2003 cela va pas etre simple!!!!!! attendont deja les pb...d'incompatilibitées .......apres on verra:)
 

Discussions similaires

Réponses
1
Affichages
118
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 218
Messages
2 086 359
Membres
103 197
dernier inscrit
sandrine.lacaussade@orang