Nom ambigu/sub or function undeclared
Pierre1310 Messages postés 8854 Statut Membre -
j'ai besoin d'aide le plus vite possible, mon boss m'a demander de lui programmer un bouton sur excel qui actualise les taches selon "côluté" pour 1 ou "en cours" pour 0,le problème ne réside pas ici, mais sur les déclarations, si je déclare la fonction j'ai un message "nom ambigu détecté", et si je ne le fait pas j'ai un message d'erreur "sub or function undeclared", le code seras ci-joint.
merci d'avance :D.
Dim j As Integer
Dim cpt As Integer
Dim cpt_ok As Integer
Dim cpt_nok As Integer
Function actualiserValpha()
GoTo Feuil2
i = 0
j = 8
cpt = 0
cpt_ok = 0
cpt_nok = 0
While (Worksheet.Name = "feuil2(rraport activité direction 2016)")
For i = 2 To Worksheet.Size()
If (T(i)(j) = True) Then
cpt_ok = cpt_ok + 1
Else
cpt_nok = cpt_nok + 1
MsgBox("vous avez %d taches. details :\n%d cmôturées \n%d encours", cpt, cpt_ok, cpt_nok) = vbOK
End Function
1 réponse
Un bouton VBA doit mettre à jour des tâches dans Excel selon les statuts clôturés et en cours, mais des messages d'erreur nom ambigu et undeclared apparaissent lorsque la fonction actualiserValpha est déclarée. Des réponses évoquent la nécessité de déclarer correctement la procédure (Sub actualiserValpha()) et d'appeler la macro au bon endroit, tout en vérifiant les types et la syntaxe. D'autres suggestions portent sur l'utilisation de IsEmpty pour vérifier le contenu des cellules et sur le raffinement de la boucle For, afin d'éviter les résultats nuls et les messages d'erreur. Pour diagnostiquer, certains évoquent l'emplacement de la macro et l'appel depuis un bouton, et le risque que la boucle n'atteigne pas le code si la feuille active n'est pas correcte.
-
Salut,
Tu obtiens une ambiguïté juste avec ce bout de code?
-
-
-
voila j'ai mis les deux cas
'quand je ne declare pas
Dim i As Integer
Dim j As Integer
Dim cpt As Integer
Dim cpt_ok As Integer
Dim cpt_nok As Integer
Function actualiserValpha()
GoTo Feuil2
i = 0
j = 8
cpt = 0
cpt_ok = 0
cpt_nok = 0
While (Worksheet.Name = "feuil2(rraport activité direction 2016)")
For i = 2 To Worksheet.Size()
If (T(i)(j) = True) Then
cpt_ok = cpt_ok + 1
Else
cpt_nok = cpt_nok + 1
MsgBox("vous avez %d taches. details :\n%d cmôturées \n%d encours", cpt, cpt_ok, cpt_nok) = vbOK
End Function
'dans ce cas le message d'erreur "Sub or Function undeclared"
'si je declare
Dim i As Integer
Dim j As Integer
Dim cpt As Integer
Dim cpt_ok As Integer
Dim cpt_nok As Integer
Dim actualiserValpha()
Function actualiserValpha()
GoTo Feuil2
i = 0
j = 8
cpt = 0
cpt_ok = 0
cpt_nok = 0
While (Worksheet.Name = "feuil2(rraport activité direction 2016)")
For i = 2 To Worksheet.Size()
If (T(i)(j) = True) Then
cpt_ok = cpt_ok + 1
Else
cpt_nok = cpt_nok + 1
MsgBox("vous avez %d taches. details :\n%d cmôturées \n%d encours", cpt, cpt_ok, cpt_nok) = vbOK
End Function
'dans ce cas le message d'erreur "nom ambigu détecté :actualiserValpha" -
-
-