Dommage Soan, que pour 51 et 52 c'est pas bon.
Tu dis qu'il y a jusqu'à 53 semaines dans une année, mais ils restent bloqués sur leur "52"...
Bref, mon petit Soso, tout cela me rend bien triste !
le Pb est dans le sens inverse du résultat vers le tableau que je suis en train de créer.Que voulez-vous dire ? Ma méthode fonctionne au contraire très bien avec le copier-coller.
C'est pour ça qu'il y a la boucle For Each Target In Target.
Voyez le fichier joint, copiez la plage H2:H5 et collez-la en A2.
PS : mon pseudo est job75.
Bonjour à tous,
Voyez le fichier joint et cette macro dans le code de la 1ère feuille :
L'avantage de cette méthode c'est que les nombres entrés sont utilisables, ce qui n'est pas le cas avec la fonction UNICAR qui renvoie un texte.VB:Private Sub Worksheet_Change(ByVal Target As Range) Set Target = Intersect(Target, [A:A], UsedRange) If Target Is Nothing Then Exit Sub Dim o As Object, c As Range Application.ScreenUpdating = False Application.EnableEvents = False 'désactive les évènements '---RAZ--- For Each o In DrawingObjects If Not Intersect(o.TopLeftCell, Target) Is Nothing Then o.Delete Next '---copier-coller--- Set c = Sheets("MODELE").[A1] For Each Target In Target 'si entrées/effacements multiples If Target Like "#" Or Target Like "##" Then c = Target c.Copy Target End If Next Application.EnableEvents = True 'réactive les évènements End Sub
Et bien sûr tous les nombres avec 1 ou 2 chiffres sont traités.
A+
Bonjour Job75le Pb est dans le sens inverse du résultat vers le tableau que je suis en train de créer.
le Pb est dans le sens inverse du résultat vers le tableau que je suis en train de créer.
A mon avis si tu modifies la couleur dans le modèle, ça doit se répercuter sur les futures saisies.Pourquoi le cercle est bleu, c'est volontaire ?
Bien sûr, voyez les fichiers joints, les contours sont noirs.A mon avis si tu modifies la couleur dans le modèle, ça doit se répercuter sur les futures saisies.
Pour cela voyez les fichiers (3) et (4) joints avec cette macro dans ThisWorkbook :Bonjour Job75
Ce que j'ai voulu dire c'est que je ne sais pas modifier la macro pour la rendre active dans n'importe quel cellule de mon projet.
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If UCase(Sh.Name) = "MODELE" Then Exit Sub
Set Target = Intersect(Target, Sh.UsedRange)
If Target Is Nothing Then Exit Sub
Dim o As Object, c As Range
Application.ScreenUpdating = False
Application.EnableEvents = False 'désactive les évènements
'---RAZ---
For Each o In Sh.DrawingObjects
If Not Intersect(o.TopLeftCell, Target) Is Nothing Then o.Delete
Next
'---copier-coller---
Set c = Sheets("MODELE").[A1]
For Each Target In Target 'si entrées/effacements multiples
If Target Like "#" Or Target Like "##" Or Target Like "###" Then
c = Target
c.Copy Target
End If
Next
Application.EnableEvents = True 'réactive les évènements
End Sub
Ça devient intéressant;Pour cela voyez les fichiers (3) et (4) joints avec cette macro dans ThisWorkbook :
La macro s'exécute dans n'importe quelle cellule de n'importe quelle feuille autre que "MODELE".VB:Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) If UCase(Sh.Name) = "MODELE" Then Exit Sub Set Target = Intersect(Target, Sh.UsedRange) If Target Is Nothing Then Exit Sub Dim o As Object, c As Range Application.ScreenUpdating = False Application.EnableEvents = False 'désactive les évènements '---RAZ--- For Each o In Sh.DrawingObjects If Not Intersect(o.TopLeftCell, Target) Is Nothing Then o.Delete Next '---copier-coller--- Set c = Sheets("MODELE").[A1] For Each Target In Target 'si entrées/effacements multiples If Target Like "#" Or Target Like "##" Or Target Like "###" Then c = Target c.Copy Target End If Next Application.EnableEvents = True 'réactive les évènements End Sub
Zut ... avec mes 14 mois de salaire j'ai le droit à 54 semaines par an ? on me vole depuis trop longtemps ... que fait la police ...ça, c'est normal ! y'a que les privilégiés qui bénéficient d'un 13ème mois de salaire qui savent compter avec 53 semaines ! nous autres, pauvres mortels qui n'avons que 12 mois de salaires dans l'année, nous comptons avec 52 semaines car 1 an = 52,1429 semaines ! (relire mon post #16) ; et peu importe si l'année est bissextile ou non : à 1 jour près en plus ou en moins, ça change rien au nombre de semaines !
Bien sûr mais si vous revalidez la cellule le cercle se recentre.Ça devient intéressant;
Par contre le cercle n'est pas solidaire du chiffre. c'est a dire que si je le déplace a droite ou gauche ils se ne suivent pas...