Bonjour,

Je cherche désespéramment à optimiser mon code.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
Mois = Format(MaDate.Value, "mmmm")
Set rangemois = Worksheets("2018").Rows("1:1").Find(Mois, lookat:=xlValue)
jour = Val(Format(MaDate, "dd"))
NomAmbulancier = Worksheets("2018").Range("AA25:AA183").Find(ChoixAmbu.Value, lookat:=xlValue).Row
Set plagejour = Worksheets("2018").Range(Replace(rangemois.MergeArea.Address, rangemois.MergeArea.Row, 2))
Colonnedujour = plagejour.Find(jour, lookat:=xlValue).Column
 
VarTmp = Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).Text
 
If VarTmp = "" Then
    'La cellule heures supp. de la date sélectionnée est vide.
    'Alors copier le résultat du calcul et ajouter commentaire.
    Cells(NomAmbulancier, Colonnedujour).Offset(1, 0) = CopieCalcul
    Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).AddComment AddCommentaire
    Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).Comment.Shape.TextFrame.AutoSize = True
Else
    'La cellule heures supp. de la date sélectionnée n'est pas vide.
    'Alors additionner la valeur actuel avec le résultat du calcul et ajouter commentaire.
    CalculTmp = TimeValue(Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).Text)
    ResultatTmp = CalculTmp + CopieCalcul
 
    ComCellule = Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).Comment.Text
    AddCommentaire2 = ("Heures supp. du matin" & Chr(10) & ComCellule & Chr(10) & Chr(10) & "Heures supp. du soir" & Chr(10) & AddCommentaire)
 
    Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).ClearContents
    Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).ClearComments
    Cells(NomAmbulancier, Colonnedujour).Offset(1, 0) = ResultatTmp
    Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).AddComment AddCommentaire2
    Cells(NomAmbulancier, Colonnedujour).Offset(1, 0).Comment.Shape.TextFrame.AutoSize = True
End If
Est-il possible de créer une variable qui serait égale à Cells(NomAmbulancier, Colonnedujour).Offset(1, 0) afin de d'alléger le code?

Merci à vous.