• Initiateur de la discussion Initiateur de la discussion excel2011
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

excel2011

Guest
Bonjour,

Voila j'ai un problème que je n'arrive vraiment pas à résoudre, je ne sais pas si c'est faisable mais avec ce site j'ai appris que tout est faisable alors voila, a l'aide d'un logiciel de gestion de temps je sors un rapport pour les absences et les retards pour une période donnée. J’ai crée un fichier Excel pour faire le suivi quotidien avec la liste de tout les employé mais je ne peu pas copier la liste du rapport sur mon fichier car malheureusement le logiciel ne reconnait pas les personnes qui sont inactifs (arrêt de travail).Résultat les cellules ne correspondent pas aux bonnes personnes. J’ai mit un exemple de rapport que le logiciel me sort ce que je voudrai c’est rajouter une feuille dans mon fichier de suivi qui regroupe tout les employer et cette feuille devrai prendre les informations du rapport que je sors et mettre les bonnes informations aux bonne personnes. Je ne sais pas vraiment comment procéder, faut’il une vba ou es que il y a un moyens a l’aide du refresh data ???

A L’AIDE SVP!
 

Pièces jointes

Re : Refresh data

Bonjour à tous,

Le fichier joint ne nous éclaire pas vraiment ! Ton logiciel de gestion du temps te sort un rapport. Ok, mais sous quelle forme? csv, txt, autre? Un petit exemple (sans données confidentielles) serait utile.
Ensuite, le suivi Excel, tu le souhaites comment? Là aussi, un fichier exemple serait opportun.
A te lire
Jocelyn
 
Re : Refresh data

Bonjour,

Je vais essayer d'expliquer ma question différemment.
La 'sheet1' c'est ma liste de tous les employés.
La 'sheet2' c'est le rapport que le logiciel me sort. Vous remarquerez qu'il manque 'm.abs3' et 'm.abs8'. J'aimerais pouvoir copier les cellules (B2:AC9)de la 'sheet2' à la 'sheet1' mais que la ligne de 'm.abs3' et 'm.abs8' restent vides. Il faudrait que chaque ligne correspond du rapport lorsqu'elles sont transférées dans la liste des employés. J'ai mis le resultat que je voudrai obtenir dans la 'sheet3'

Voila! Merci!
 

Pièces jointes

Re : Refresh data

Merci bcp joss56 et mutzik

Joss56 c'est exactement ce que je voulais, j'ai juste oublier de préciser que j'avais 250 m.abs 🙁
Pourrai tu m'expliqué comment marche ta vba( je suis amateur) pour que je l'adapte a mes 250 employées
 
Re : Refresh data

Re,

Fais ALT+F11 et tu auras accès à l'éditeur Visual Basic. Regarde le code saisi pour le bouton. J'ai modifié le code de sorte que cela fonctionne pour 250 (ou plus) salariés. La structure des fichiers plats (Sheet1 et 2) ne doit pas être modifiée. Si tel devait être le cas, reviens me dire.
Si tu as des questions, n'hésite pas.
Jocelyn
 

Pièces jointes

Re : Refresh data

J'aurrai une autre question
j'utilise cette vba pour envoyer un msg outlook
Sub SendMail()
Dim ol As New Outlook.Application
Dim OLMail As MailItem
Dim CurrFile As String
Dim chemin$, Client$, Fichier$

Set ol = New Outlook.Application
Set OLMail = ol.CreateItem(olMailItem)
With OLMail
.To = …
.Subject = …
.HTMLBody = …
& "" & recuptxt("C:\")
.Display
End With
End Sub
j'aimerai savoir si je peux utilisé la même vba mais que a chaque fois que (ex: m.abs1 c'est absenté 3 fois)?
Sur mon fichier de suivi j'ai une case(ak) qui me calcule le nombre nombre d'absences alors j'aimerais (si c'est possible bien sur) qu'un msg me soit envoyé a chaque fois que une de ces cases atteint un nombre précis (ex 3) et la meme chose avec les retard(al)

Merci!
 

Pièces jointes

Re : Refresh data

Bonjour
pour accéler le temps de traitement
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
lig1 = 2
lig2 = 2
' lig1 est l'identificateur des lignes de la feuille sheet1
' lig2 est l'identificateur des lignes de la feuille sheet2
debut:
Do While Sheets("sheet1").Cells(lig1, 1) <> ""
If Sheets("sheet2").Cells(lig2, 1) = Sheets("sheet1").Cells(lig1, 1) Then
For col = 2 To 29
Sheets("sheet1").Cells(lig1, col) = Sheets("sheet2").Cells(lig2, col)
Next col
Else
lig1 = lig1 + 1
GoTo debut
End If
lig1 = lig1 + 1
lig2 = lig2 + 1
Loop
Application.Calculation = xlCalculationAutomatic
End Sub
 
Re : Refresh data

Bonjour à tous,

La structure des fichiers n'est plus la même...ceci explique cela. Les noms de feuilles ont changé et les données sont écrites à partir de la 5ème ligne!
Voilà, c'est corrigé. Si tu dois encore faire des changements de "présentation" à l'avenir, il vaudrait mieux définir avant et une bonne fois pour toutes ce que tu souhaites vraiment. Par exemple , comment ça va se passer pour les mois de février, mars etc...?
Je crois qu'une réflexion préalable s'impose.
A te lire
Jocelyn
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
1
Affichages
236
Réponses
7
Affichages
527
Réponses
1
Affichages
457
Réponses
5
Affichages
471
Retour