La nuit va être longue .....

nicola40

XLDnaute Junior
je suis sur un casse-tête depuis 4 heures ....

Mon fichier excel "A" comprend un tcd qui attaque un autre fichier "B".
Après calcul et mise à jour du TCD, une macro se lance en auto pour reformatter des calculs complémentaires.

Si je fais un chgt d'une cellule sur la feuille de "A", tout se passe bien. Si je lance le recalcul du tcd c'est la cata
- le TCd se met à jour correctement
- la macro détecte bien le chgt et commence à s'exécuter
- arrivé à l'instruction range, on bascule au milieu (y= ..) d'une fonction placée dans un module du fichier "B"
- puis sortie brutale sans terminer la macro

Sans doute une erreur de débutant sur des déclarations ....

J'en perds mon latin !



macro :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim derlig1
Application.EnableEvents = False
Sheets("Of ouverts").Select
derlig1 = Range("b65536").End(xlUp).Row
Range("e13:M900").Select
Selection.Clear
Range("e13:i13").Select
Selection.AutoFill Destination:=Range("e13:i" & derlig1)
ActiveSheet.PageSetup.PrintArea = "$A$1:$i" & derlig1
Range("A1").Select
Application.EnableEvents = True

End Sub

Fonction du fichier "B"

Function semaine_num(ddate)
Dim x, y

x = Int((ddate - 2) / 7) + 0.6
y = 52 + 5 / 28
x = Int(x - y * Int(x / y)) + 1
If Month(ddate) = 12 And x = 1 Then x = 53
semaine_num = x

End Function
 

Discussions similaires

Statistiques des forums

Discussions
312 447
Messages
2 088 496
Membres
103 871
dernier inscrit
julienleburton