XL 2013 problème au niveau de ma macro

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 !

ATHE RIOVELI

XLDnaute Occasionnel
Bonsoir le forum.
Je souhaite créer cette macro pour ma feuille excel, mais elle ne fonctionne pas.
je souhaite avoir des notes G13, G14, G15, ........ en fonction des valeurs des autres cellules.
Alors voici un peu cette macro que excel le me laisse même pas finir.

Private worksheet_Active ( )
Dim J as integer
For J= 13 to 124
if [G10]="" Then Celle (J,7)=""
if Cells(J,2)="" Then Cells(J,7)=""
elses
Cells (I,7)=[G10]+Cells(J,5)-(QUOTIENT(cells(I,5);3))
End if
End if

MERCI A VOUS
 
Bonjour ATHE RIOVELI, cathodique, natorp,

Pourquoi utiliser la variable I, elle n'est pas définie ?!

D'après ce que je crois comprendre (?) ceci fonctionne :
Code:
Private Sub Worksheet_Activate()
Dim J As Integer
For i = 13 To 124
Celle(J, 7) = IIf([G10] = "" Or Cells(J, 2) = "", "", [G10] + Cells(J, 5) - Application.Quotient(Cells(J, 5), 3))
Next
End Sub
A+
 
Bonsoir Job75, Bonsoir le forum.
Lorsque je met la macro dans la feuille concernée, il apparait ce message:
nom ambigu détecté détecte: Worksheet_Activate()
alors que cette macro, je pense qu'elle est effectivement ce que je recherche.
Pourquoi donc nom ambigu?
MERCI pour votre aide
A+
 
Re bonjour le forum,
j'ai insérer cette partie de la macro de la macro
For I = 13 To 100
Cells(I, 7) = IIf([G10] = "" Or Cells(I, 2) = "", "", [G10] + Cells(I, 5) - Application.Quotient(Cells(I, 5), 3))
Next
le message que je reçoit est erreur d’incompatibilité.

Voici la macro qui initiale proposé par l'excellent job75:

Private Sub Worksheet_Activate()
Dim I%
[Date_debut] = [D2]: [Date_fin] = [F2] 'pour le calcul des heures d'absence
If Application.Sum([D13.F13].Resize(100)) Then
For I = 1 To 100
If Feuil1.Cells(I + 14, 2) <> Cells(I + 12, 2) Or [Date_debut].Offset(I + 3) <> Cells(I + 12, 3) Then _
If MsgBox("Attention la feuille source a été modifiée, faut-il vraiment mettre à jour le trimestre ?", 4) = 6 _
Then Exit For Else Exit Sub
Next
End If
[A13:B13].Resize(100) = Feuil1.[A15:B15].Resize(100).Value
[C13].Resize(100) = [Date_debut].Offset(4).Resize(100).Value
End Sub
 
Bonjour.
ATHE RIOVELY
Il n'existe pas d'évènement Active pour l'objet Worksheet.
Le nom d'évènement qui s'en rapproche le pluse c'est Activate
S'il s'agit d'une procédure interne que vous appelez vous même de quelque part d'autre, vous ne devriez pas l'appeler comme ça !
 
Bonjour le forum.
Je vous joint le classeur en question : mot de passe ADMIN.
il s(agit au niveau des feuilles 1er trim, 2ème Trim et 3ème trim de donner la note de conduite des élèves.
Lorsque dans la cellule G13 j'écrit ceci G13=G10+F13-QUOTIENT(D13;3),
pas de souci, on a lo note de conduite de l'élève.
Mon souci est que je souhaite pas tirer vers le bas pour incrémenter.
Je souhaite une macro pour gérer cette formule au niveau de trois trimestres.
Parceque avec les macros, les formules n'apparaissent pas dans la barre de formule.
MERCI
A+
 

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

Discussions similaires

Réponses
8
Affichages
467
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
169
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
649
Réponses
10
Affichages
799
Retour