modifier une cellule en modifiant la bonne ligne

altinea

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

Re j'ai desactive la partie calendar, mais ça bug sur le fameux "y" , puis pour la date peux tu me dire comment faire en sorte que les textbox box prennent la date en mois puis en semaine et le retranscrire à la suite des autres données.
je suis vraiment trop nul, c'est pas simple de comprendre surtout que tu me donne des infos hyper pointues, contrairement à ce que j'avais commencé a faire qui était tres lourd
 

altinea

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

encore un poit ckan je lance l'usf statistiques il plante sur le code format alors qu'avant ça fonctionnait
 

laetitia90

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

re , un peu perdu dans tout cela .moi aucun pb...avec derniere version envoyée tout marche??? peut Etre enregistre le fichier en version excel 2010
autrement tu me renvois la derniere version donc la 10 enregistre en excel2010
il y a des liens dans ton fichier ???
la version 9 marchait t'elle or pb... calendar
 

altinea

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

Pour le "y" j'ai trouvé il n'était pas défini as long, par contre pour le probleme format je vois pas
Private Sub UserForm_Initialize()
Dim a, i As Byte, cel As Range, n As Byte
a = Array("BD31", "BD15", "BD33", "BE5:BE12", "BE18:BE25")
For i = 0 To 4
For Each cel In Sheets("Feuil9").Range(a(i))
n = n + 1
Controls("TextBox" & n) = Format(cel, "0.00")
Next
Next
End Sub

c'est très formateur de chercher aussi plus long mais c bien
 

altinea

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

bon en version 2010, cela fonctionne, reste juste la partie calendar, désolé de t'avoir embrouillé avec tout cela; Pour la date laisse tomber car je ne trouve pas calendar dans mon vba, ni manquant, et je n'ai pas accès à contrôles supplémentaire,
indique moi juste comment inscrire la date et la récupérer dans les deux textbox et sur la feuille, merci encore
merci pour ta patience et ta disponibilité
 

Fichiers joints

laetitia90

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

re,
vire le code concernant la date
c'est dommage dans excel2010 on peut mettre aussi DTPicker
Microsoft MonthView Control x.0
Microsoft Date and Time Picker Control x.0
il faudrait que une personne qui a 2010 te donne la marche a suivre pour installer tous cela

autrement le code ecrire sous ce format 18/09/12 ou 18/09/2012


Code:
Private Sub Tb_date_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Tb_mois = Month(Tb_date)
Tb_semaine = DatePart("ww", (Tb_date), vbMonday, vbFirstFourDays)
End Sub
on peut faire plus complexe pour eviter faute de frappe mais bon !!!
 
Dernière édition:

altinea

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

merci laetitia90, je vais m'en occuper dès ce soir, et je te tiens au courant
c'est domage que ca marche pas avec mDF calendar car j'avais réussi à l'installer, après le gros inconvénient est qu'il faut que tout fonctionne sur le reseau de l'entreprise et pour cela il faut avoir les droits et c'est deja plus complexe.
Merci encore pour ta générosité, ta gentillesse et ta disponibilité.
Je vais malgré tout voir comment installer calendar afin de faire fonctionner comme tu me l'avais proposé.
bonne journée à toi
 

altinea

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

re, encore un petit point lorsque je met la date il prends bien la date modifie le contenu des textbox, mais ne me l'inscrit pas dans les colonne 17 et 18 des feuilles formation realisées et formations programmées,
merci
 

altinea

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

En fait ça marche par moment, ce que je trouve c'est que lorsque je valide la validation est relativement longue avant que l'info soit prise en compte
merci
 

laetitia90

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

re, bizarre c'est moi assez rapide en modifiant un peu ??

Code:
Private Sub ajout_Click()
 With Application
 .Calculation = xlCalculationManual: .ScreenUpdating = False: .DisplayAlerts = False
 a = IIf(Label12.Caption = "SAISIE DES FORMATIONS REALISEES", 3, 5)
 With Sheets("Feuil" & a)
 z = .Cells.Find("*", , , , xlByRows, xlPrevious).Row + 1
 For y = 1 To 10: .Cells(z, y) = Controls("Te" & y).Value: Next y
 For y = 1 To 5: .Cells(z, y + 10) = Controls("T" & y).Value: Next y
 .Cells(z, 16) = CDate(Tb_date): .Cells(z, 17) = Tb_mois.Value: .Cells(z, 18) = Tb_semaine.Value
 End With
 Cb_nomprenom = "": C1 = ""
 For Each j In Controls
 If TypeName(j) = "TextBox" Then j = ""
 Next j
.Calculation = xlCalculationAutomatic: .ScreenUpdating = True: .DisplayAlerts = True
End With
End Sub
PS pour la date il faut valider j'utilise exit
 
Dernière édition:

altinea

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

re bonsoir merci encore,
là ca bug sur la ligne

.Cells(z, 16) = CDate(Tb_date): .Cells(z, 17) = Tb_mois.Value: .Cells(z, 18) = Tb_semaine.Value

peut etre l'ajout de CDate

je suis vraiment désolé de tembeter encore
 

altinea

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

re bonsoir,
là c'est la fin c'est une macro qui fonctionne sans problème par contre je voulais savoir si tu as une astuce ou une méthode pour la réduire.
Je l'ai enregistrée via l'enregistreur de macro, je pense pas que cela soit la meilleure des solutions pour avoir quelque chose de très concis et tout aussi efficace

Sub ImportFTP()
'
' Macro7 Macro
'
'Workbooks.Open Filename:= _
'"U:\PUBLIC\CTC\COMMUN\Ressources Humaines\mouvements\BASE DONNEES FTP.XLS"
'
Application.Goto Reference:="R2C1:R500C10"
Selection.ClearContents



'Workbooks.Open Filename:="F:\Plan de formation\BASE DONNEES FTP.XLS"

Workbooks.Open Filename:= _
"U:\PUBLIC\CTC\COMMUN\Ressources Humaines\mouvements\BASE DONNEES FTP.XLS"


Columns("J:M").Select
Selection.EntireColumn.Hidden = False
Range("C3:D3").Select
Application.Goto Reference:="R3C3:R230C4"
Selection.Copy
Windows("1-Suivi du plan de formation 2012.xls").Activate
ActiveWindow.SmallScroll Down:=-258
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A2").Select
Windows("BASE DONNEES FTP.XLS").Activate
Range("E3").Select
Application.Goto Reference:="R3C5:R230C5"
Application.CutCopyMode = False
Selection.Copy
Windows("1-Suivi du plan de formation 2012.xls").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D2").Select
Windows("BASE DONNEES FTP.XLS").Activate
ActiveWindow.SmallScroll Down:=-21
Range("F3:K3").Select
Application.Goto Reference:="R3C6:R230C11"
Application.CutCopyMode = False
Selection.Copy
Windows("1-Suivi du plan de formation 2012.xls").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("J2").Select
Windows("BASE DONNEES FTP.XLS").Activate
Columns("K:L").Select
Selection.EntireColumn.Hidden = True
Range("P3").Select
Application.Goto Reference:="R3C16:R230C16"
Application.CutCopyMode = False
Selection.Copy
Windows("1-Suivi du plan de formation 2012.xls").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1").Select
Windows("BASE DONNEES FTP.XLS").Activate
ActiveWindow.Close
End Sub
Sub fixeFormules()
'
' FixeFormules Macro
'

'
Range("B3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC[-1],Agents,2,FALSE)),"""",VLOOKUP(RC[-1],Agents,2,FALSE))"
Range("C3").Select
ActiveCell.FormulaR1C1 = ""
Range("B3").Select
Selection.AutoFill Destination:=Range("B3:H3"), Type:=xlFillDefault
Range("B3:H3").Select
Range("B3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC1,Agents,2,FALSE)),"""",VLOOKUP(RC[-1],Agents,2,FALSE))"
Range("B3").Select
Selection.AutoFill Destination:=Range("B3:H3"), Type:=xlFillDefault
Range("B3:H3").Select
Range("B3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC1,Agents,2,FALSE)),"""",VLOOKUP(RC1,Agents,2,FALSE))"
Range("B3").Select
Selection.AutoFill Destination:=Range("B3:H3"), Type:=xlFillDefault
Range("B3:H3").Select
Range("C3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC1,Agents,3,FALSE)),"""",VLOOKUP(RC1,Agents,3,FALSE))"
Range("D3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC1,Agents,4,FALSE)),"""",VLOOKUP(RC1,Agents,4,FALSE))"
Range("E3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC1,Agents,8,FALSE)),"""",VLOOKUP(RC1,Agents,8,FALSE))"
Range("F3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC1,Agents,9,FALSE)),"""",VLOOKUP(RC1,Agents,9,FALSE))"
Range("G3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC1,Agents,7,FALSE)),"""",VLOOKUP(RC1,Agents,7,FALSE))"
Range("H3").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(RC1,Agents,10,FALSE)),"""",VLOOKUP(RC1,Agents,10,FALSE))"
Range("H4").Select
End Sub


merci beaucoup
 

laetitia90

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

re sans exemple concret peut pas faire grand chose ??
cdate chez moi plante pas ??
 

altinea

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

Re je regarde comment faire je suis dans le train je ferai demain pour l exemple merci encore
 

altinea

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

Bonjour le forum, Laetitia90,
Tout d'abord merci pour votre aide, et un grand merci à Laetitia90 qui m'as aidé et a passé du temps, de la disponibilité et tout cela avec une grande gentillesse et professionnalisme. Cela m'a permis de construire mon projet, certainement il devra évoluer une fois que certains utilisateurs s'en serviront.
Je voulais juste préciser que dans le choix des dates le calendrier qui s'affiche est celui de mDF Calendar, il est donc judiceux de suivre les information d'ajout de cette macro.
Pour le reste j'ai essayé de commenter au maximum les lignes de codes.
J'espère que le travail effectué pourra servir à certain.
J'ai décidé de procéder ainsi car souvent les projets ou les demandes faites sur le forum, ne sont pas finalisées, à savoir que le demandeur ne met pas son travail final sur le fil. C'est dommage car cela permet à chacun d'aller voir la réalisation jusqu'au bout et de mieux comprendre le travail qu'il y a eu.

Si certains d'entre vous voient des améliorations ou ont des idées de développement je suis preneur
Merci encore
bon dimanche
MERCI laetitia90
 

Fichiers joints

altinea

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

Re bonsoir le forum, après cette courte pause, je reviens vers toi Laetitia90 pour savoir si tu pourrai m'aider sur cette nouvelle demande.
J'ai Ajouté un nouvel userform, à partir duquel en fonction du choix de la personne ou de la formation celui ci me restituerai les données, j'ai mis en commentaire dans l'userform3.
Pourrai tu m'aider là dessus merci encore
 

Fichiers joints

altinea

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

Re Bonsoir,
Laetitia90, si as le temps et que tu veux bien regarder encore une fois mon fichier.
Voilà les éléments que j'ai remarqué. J'ai repris plusieurs fois le fichier en repartant de zéro et en recopiant le code.En mettant à jours les USF.
Le premier point est qu'avant le dernier enregistrement j'étais à environ 300 ko pour le fichier rempli avec les informations dans les feuilles. J'ai ajouté deux usf et cel est monté à 1,08 Mo, c'est peu etre normal??
Les autres points :
-Usf formation réalisées et usf formations programmées, lors de la validation, il met longtemps avant de passer sur l'effacement des cellules et de redonner la main pour activer le bouton fermer.

j'ai ajouté une ligne de code dans la formation réalisées afin que lorsque je valide il tri par ordre alphabetique lors de l'enregistrement de la feuille.

Les deux derniers points :
usf3 je souhaiterai faire une recherche soit par agent afin de connaitre les formations suivie par celui ci dans la textbox et idem poiur le choix d'une formation savoir quel agent l'a suivie
J'ai repris le meme principe que sur les autres, mais je n'ai pas su associer à la textbox

usf4, j'aurai souhaité pouvoir modier les parametres agents que cela modifie la ligne, j'ai réussi à faire mais il me crée une linge supplémentaire avec les infos

Merci pour ton aide
 

Fichiers joints

altinea

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

re bonsoir, en fait j'ai zippé le fichier que j'utilise avec toutes les infos, je pense que cela devrait être mieux.
Merci encore
 

Discussions similaires


Haut Bas