Boujour
Testes ceci et dis moi
HEURES.xlsm (22,2 Ko)
Bonjour
écoute je suis désolé, mais j’ai fais une erreur en t’envoyant le fichier.
Alors ce que tu m’as retourné fonctionne très bien. Mais j’ai oublié de rajouter les 4 tableaux manquants sur la feuille « CALCUL DES HEURES » (voir fichier ci-joint)
Je ne sais pas ou j’avais la tête , vraiment désolé.
J’ai essayé de recopier ta formule en dessous de la première pour continuer mais cela ne fonctionne pas.
Merci d’avance pour la rectification.
Cdt Rubis
HEURES.xlsm (35,6 Ko)
Pas grave
Il a fallut que je retravaille le code
En cellule A2 la liste des lignes congés
A faire vivre au gré de l’évolution de leur nombre
Testes et dis moi
HEURES (1).xlsm (37,4 Ko)
Re,
mais cela fonctionne uniquement sur la feuille « CONGES » j’aurai voulu que chaque tableau soit lié à sa feuille de congés (CONGES A, CONGES B, etc…)
Re,
desolé c’est comme ca le nom des feuilles
mais cela fonctionne uniquement sur la feuille « CONGES » j’aurai voulu que chaque tableau soit lié à sa feuille de congés (CONGES, CONGES 2, >CONGES 3etc…)
A me donner les instructions petits bouts par petits bouts à la fin de l’année on risque de ne pas avoir terminé
Donc j’espère que cette fois ci ce sera la bonne
En cellule « A3 » dans le même ordre que les lignes congés en cellule « A2 » la liste des onglets respectifs à remplir
Ne pas mettre en début et fin de liste cellule « A2 » et « A3 » de symbole « / »
Je pense qu’enfin cela doit convenir
Testes et dis moi
HEURES (1).xlsm (38,2 Ko)
Merci beaucoup
désolé pour ce désordre ce matin c’était le chaos au travail et j’ai pas pu me concentrer.
Super, vraiment Super travail.
20/20 pour tout travail effectué de ta part et même au delà.
Merci encore à toi et à très vite.
Cdt Rubis
Merci pour cette reponse
La qualité du traitement restera intimement liée à celle des données à ta main cellule « A2 » et « A3 »
Pas de séparateur « / » à leurs extrémités
Bonne utilisation
Au plaisir
Bonjour,
J’ai un soucis avec le sujet que tu as traité hier pour moi.
Au départ je saisi les heures des salariés via un userform, qui une fois validé, me place les chiffres dans les tableaux "CALCUL DES HEURES ’ que tu avais en pièce jointe hier.
Hier tout fonctionnait et ce matin je saisi les heures et il m’affiche l’erreur ci- joint en image.
Alors pour démonter mes modules c’est compliqué . je te laisse en pièces jointes la macro de validation du userform ainsi que ta macro de hier que j’ai adaptée à mes modules.
Je ne sais pas si tu peux faire avec alors dis moi .
Merci d’avance. Cdt Rubis
MACRO USERFORM:
Private Sub CommandButton1_Click() 'valider
Application.ScreenUpdating = False
Dim wk1 As Workbook, chemin As String, col As Integer, lig1 As Integer
If Me.TextBox1.Value = « » Then MsgBox (« Vous n’avez pas saisie la date »): Me.TextBox1.SetFocus: Exit Sub
chemin = ActiveWorkbook.Path
Set wk1 = Application.Workbooks.Open(chemin & « \GESTION PERSONNEL ET PAIE.xlsm »)
Application.DisplayAlerts = False
With wk1.Sheets(« RELEVE DES HEURES »)
col = (CDate(Me.TextBox1.Value) - .Range(« C4 »).Value) + 3
lig1 = 5
.Cells(lig1, col).Value = Me.TextBox2.Value
.Cells(lig1 + 1, col).Value = Me.TextBox3.Value
.Cells(lig1 + 2, col).Value = Me.TextBox4.Value
.Cells(lig1 + 3, col).Value = Me.TextBox5.Value
.Cells(lig1 + 4, col).Value = Me.TextBox6.Value
.Cells(lig1 + 5, col).Value = Me.TextBox7.Value
.Cells(lig1 + 9, col).Value = Me.TextBox8.Value
.Cells(lig1 + 10, col).Value = Me.TextBox9.Value
.Cells(lig1 + 11, col).Value = Me.TextBox10.Value
.Cells(lig1 + 12, col).Value = Me.TextBox11.Value
.Cells(lig1 + 13, col).Value = Me.TextBox12.Value
.Cells(lig1 + 14, col).Value = Me.TextBox13.Value
.Cells(lig1 + 18, col).Value = Me.TextBox14.Value
.Cells(lig1 + 19, col).Value = Me.TextBox15.Value
.Cells(lig1 + 20, col).Value = Me.TextBox16.Value
.Cells(lig1 + 21, col).Value = Me.TextBox17.Value
.Cells(lig1 + 22, col).Value = Me.TextBox18.Value
.Cells(lig1 + 23, col).Value = Me.TextBox19.Value
.Cells(lig1 + 27, col).Value = Me.TextBox20.Value
.Cells(lig1 + 28, col).Value = Me.TextBox21.Value
.Cells(lig1 + 29, col).Value = Me.TextBox22.Value
.Cells(lig1 + 30, col).Value = Me.TextBox23.Value
.Cells(lig1 + 31, col).Value = Me.TextBox24.Value
.Cells(lig1 + 32, col).Value = Me.TextBox25.Value
.Cells(lig1 + 36, col).Value = Me.TextBox26.Value
.Cells(lig1 + 37, col).Value = Me.TextBox27.Value
.Cells(lig1 + 38, col).Value = Me.TextBox28.Value
.Cells(lig1 + 39, col).Value = Me.TextBox29.Value
.Cells(lig1 + 40, col).Value = Me.TextBox30.Value
.Cells(lig1 + 41, col).Value = Me.TextBox31.Value
End With
wk1.Save
wk1.Close
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox « Salarié du jour et heures enregistrés »
Unload Me
End Sub
TA MACRO DE HIER
Private Sub Worksheet_Change(ByVal Target As Range)
listelignes = « / » & Range(« S1 ») & « / »
listeonglets = « / » & Range(« S2 ») & « / »
If UBound(Split(listelignes, « / » & Target.Row & « / »)) > 0 Then
lignetraitée = Target.Row
nomonglet = Split(listeonglets, « / »)(UBound(Split((Split(listelignes, lignetraitée)(0)), « / »)))
datedébut = « »
datefin = « »
For Each C In Range(« C » & lignetraitée & « :AG » & lignetraitée)
If C <> « » Then
If datedébut = « » Then
datedébut = Cells(lignetraitée - 4, C.Column)
End If
datefin = Cells(lignetraitée - 4, C.Column)
End If
Next
Sheets(nomonglet).Range(« F96 ») = "du " & CDate(datedébut) & " au " & datefin
End If
End Sub
Et encore une fois oublié ! Quelle semaine !
voici les images des erreurs.
Pour revenir a la macro du userform via lequel je saisi les heures, juste pour, info la feuille destinataire « CALCUL DES HEURES » se nomme ici RELEVE DES HEURES
Bonjour
Et oui un cas non prévu !!!
dernière date en colonne AD le Lundi 28/02 et une valeur ligne congés présente dans les colonnes qui suivent jusqu’à la colonne « AG » sans date en correspondance et c’est le bug
Cette situation n’est pas très propre de mon point de vue
Seules les colonnes avec date devraient avoir leur cellule ligne congés avec une donnée celles sans date devraient être nettoyées de toute donnée
C’est mon point de vue
J’ai apporté une correction pour prendre en considération cette situation qui pour moi est anormale mais pour malgrès tout avoir le résultat escompté
Testes et dis moi
fiche 10.xlsm (54,8 Ko)
Bonjour
je crois que tu t’es trompé de fichier aussi !
Re,
alors je ne sais pas si tuas lu le message, mais je crois que tu m’as envoyé le mauvais fichier .
Oups
Et oui voilà ce qui arrive quand on traite plusieurs posts à la fois
Désolé voila le bon fichier pour toi ci-joint
HEURES (1).xlsm (38,7 Ko)
Et oui !
cela veut tout dire.
Le professeur n’arrive plus à suivre !
Merci beaucoup pour ton aide et ta patience, tout fonctionne, enfin pourquoi je dis cela ! il n’y a rien à dire sauf MERCI à toi.
A une prochaine certainement.
Rubis
Merci pour ton retour et pour ta clémence en vers mes impers
Je ne recommencerai plus promis
Au plaisir de te retrouver
Pas de soucis je comprends.
Le forum a de la chance de t’avoir avec toute l’aide et le travail que tu apportes vers les demandes.
Ton travail c’est tout simplement Génial et très professionnel.
Alors a très vite .
Cdt Rubis
Merci merci
C’est un plaisir pour moi de vous venir en aide et vous satisfaire
Au plaisir de réitérer avec toi
Bonjour,
alors il me reste un petit soucis que je n’arrive pas à comprendre.
Dans ma feuille de stock j’avais env. 1600 lignes d’articles et j’ai une macro qui me permets de descendre au dernier article(dernière ligne stock).
L’autre macro me permets de remonter directement au début (1ère ligne stock).
Or, je viens de supprimer plusieurs articles de mon stock et lorsque je clique maintenant sur le bouton pour descendre au dernier article il va directement à l’ancien emplacement du dernier article.(donc quasiment 150 lignes plus loin)
Que faut-il changer dans les codes que je mets ci-dessous ?
Sub remonter()
'Remonter au haut de la feuille stock
ActiveWindow.ScrollRow = 1
End Sub
Sub descendre()
'Descendre a la derniere ligne du stock
ActiveWindow.ScrollRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
End Sub
Merci d’avance pour ta réponse
Cdt Rubis
Bonjour
As tu essayé avant d’utiliser ton traitement d’enregistrer de fermer et de rouvrir le fichier ?
Essaies et dis moi