Liste de validation réparer mais VBA qui tourne pas

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 !

bbanor

XLDnaute Occasionnel
Bonjour je me permets de relancer ce fil sur mon problème de VBA.

J'avais dans le premier fil demander de l'aide sur une vb qui ne tournait pas car pb avec un rajout de ligne au départ. Ce problème réglé un autre pb est survenu avec ma liste de validation de données en feuille 2. J'ai repris le fichier et recommencer le tout. Maintenant je me retrouve avec le même pb qu'au début : Ma liste de validation fonctionne mais ma VBA ne fonctionne plus.
Alors là je n'y comprends plus du tout et du tout. Pourtant j'ai repris la VBA code et j'y est fais les changements nécessaires.

Help please !!!

Excel doit être contre moi ou je ne sais plus ce qui se passe !!!
Je vous mets le nouveau fichier en PJ

Merci de vous attarder encore une fois sur mon problème.
 

Pièces jointes

Re : Liste de validation réparer mais VBA qui tourne pas

Bonjour bbanor,

Peut-être aurait-il était plus simple de rester sur le même fil ????

Réargumenter etc....

Car, là, on repart à la case zéro..... (j'ai suivi ton autre fil)

Je ne sais pas où est Curepipe, mais je te souhaite un bon après-midi.

Jean-Pierre
 
Re : Liste de validation réparer mais VBA qui tourne pas

Bonjour bbanor,

En accord avec Jean-Pierre, il est inutile de multiplier les fils, cela ne fait qu'embrouiller les choses.

Dans le fichier que tu as envoyé, la macro ne peut pas marcher puisque tu n'as pas fait les modifications nécessaires à savoir:

Au début de la procédure reportrésultats:

Code:
.Range("[COLOR=red]A7[/COLOR]:C1000").ClearContents
Nom = .Range("[COLOR=red]B6[/COLOR]").Value

Un peu plus loin dans la même procédure:

Code:
' Report des données
With Sheets("Feuil2")
L = [COLOR=red]7
[/COLOR]

Et dans la procédure suivante:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("[COLOR=red]B6[/COLOR]")) Is Nothing Then
ReportResultats
End If
End Sub

rappel:

B6 est la cellule qui contient le nom choisi
A7 est la première cellule de donnée
7 est la première ligne de données (d'où L=7)

Mais tout ça était déjà précisé dans le Fil précédent.

Au fait, pourquoi la liste ne marchait-elle pas?

@+

Gael
 
Re : Liste de validation réparer mais VBA qui tourne pas

Merci Jean Pierre d'avoir répondu

Je réargumente :

- J'ai sur la feuille 1 des compétences et des notes pour chaque élève.
- Sur la feuille 2 je voudrais qu'à partir du nom selecté dans ma liste de validation en B6, il m'affiche le bulletin de l'élève cad toutes ces notes et compétences devraient s'afficher.

C'est ce que devrait produire ce code VBA. Mais malheureusement non!!!

Voilà
Merci pour votre aide

PS : Curepipe se trouve à l'Île Maurice un petit grain de sable dans l'Ocean Indien
 
Re : Liste de validation réparer mais VBA qui tourne pas

Bonjour le fil, l'océan indien et le forum

change ta sub comme ceci pour éviter le bouclage

Private Sub Worksheet_Change(ByVal Target As Range)
If Etat = 1 Then Exit Sub
ReportResultats
End Sub

dans ton module, tu crées la variable
Public Etat

puis en entrée de sub (celle du module) , tu mets
Etat = 1
juste avant End Sub, tu mets
Etat = 0

Pour le reste, je suis d'accord avec tt le monde, ta sub ne peut pas marcher, j'y rajouterais même le tableau qui ne peut pas se remplir
Désolé, pas plus de temps pour continuer aujourd'hui (tu es 1 heure plus tard que moi)
Bon courage et à +
Denis
 
Re : Liste de validation réparer mais VBA qui tourne pas

Re, et bonjour Denis,

Tout à fait d'accord avec la remarque de Denis mais tu peux le réaliser plus simplement:

dans la procédure reportResultats, tu désactives la gestion d'évènements pour la réactiver en fin de procédure:

Code:
Sub ReportResultats()
Dim Dercol As Byte, Col As Byte, Derlig As Integer, L As Integer, Nom As String, i As Integer, j As Byte, Tablo
' Effacer les résultats précédents
Application.ScreenUpdating = False
[COLOR=red]Application.EnableEvents = False[/COLOR]
[COLOR=#ff0000].[/COLOR]
[COLOR=#ff0000].[/COLOR]
[COLOR=#ff0000].[/COLOR]
[COLOR=red]Application.EnableEvents = True[/COLOR]
[COLOR=black]End sub[/COLOR]

@+

Gael
 
Re : Liste de validation réparer mais VBA qui tourne pas

Re, Bonsoir Gaël,

Pour avoir lancé ton fichier, il bloque sur : ReportResultats, sauf erreur, cette procédure n'est pas présente dans ton code.... ????

Si tu ne tiens pas compte des instructions données, cela ne peut pas fonctionner.
 
Re : Liste de validation réparer mais VBA qui tourne pas

Salut JeanPierre

Mais il me semble avoir fait les modifs dans le module.

Ou je n'ai pas compris vos suggestions du fil. Je signale que je suis novice en VBA et que j'essais par le biais de ces petits défis que je lance de m'appréhender les outils VBA.
Donc milles excuses si j'y suis pas arrivé.
 
Re : Liste de validation réparer mais VBA qui tourne pas

Re,

Ci-joint version modifiée.

Le nom de la procédure est "ReportResultats"
j'ai remis les instructions:

Application.enableevents=false
Application.enableevents=true

en début et fin de procédure pour désactiver puis réactiver la procédure qui se déclenche lors d'une modification dans la feuille.

@+

Gael
 

Pièces jointes

Re : Liste de validation réparer mais VBA qui tourne pas

La VBA fonctionne bien mais je dois la faire démarrer manuellement. Ce qui n'est pas un problème car il me suffirait alors de rajouter un bouton auquel serait affecté la macro "reportrésultats" et le tour est joué.

Merci en tout cas pour le coup de main sur ce défi que je me suis lancé maintenant il me reste plus qu'à étudié ce code de plus prêt.
 
Re : Liste de validation réparer mais VBA qui tourne pas

Re,

Normalement, la procédure est activée automatiquement en cas de changement de la valeur de la cellule B6 (nom).

Ci-joint une dernière version avec le test de changement en B6 que je n'avais pas remis.

@+

Gael
 

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
2
Affichages
335
Retour