• Initiateur de la discussion Initiateur de la discussion martin.ugo
  • Date de début Date de début

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 !

M

martin.ugo

Guest
Bonjour à tous,
Désolé pour le titre peu explicite.
Comme je l'ai déjà raconter dans un précédent poste, je tente de préparer un fichier excel pour la gestion de prêt d'équipement protection individuel. Je prépare ce document pour l'association de montagne où je fait de l'escalade.

Dans le fichier joint vous remarquerez que dans les colonnes armoire alpi, escalade, corde et canyon j'ai créé des listes de validation pour permettre aux adhérents de sélectionné le matériel qui vont emprunter.
A chaque materiel sélectionné doit être avoir une date de retour.

Le problème s'est que dans la configuration actuelle sur la même ligne je peus sélectionné 1 matériel par colonne donc 4 matériels par ligne. Et je ne veux que 1 matériel par ligne.
Y aurait-il une solution à ce problème.
Merci
 

Pièces jointes

Re : Liste de validation

Bonjour Martin.ugo

Je te propose un peu de code à mettre dans la feuille
Regarde si cela te convient

Private Sub Worksheet_Change(ByVal Target As Range)
'Bloque les évènnements
Application.EnableEvents = False
'Efface si autres choix
l = Target.Row
c = Target.Column
For n = 3 To 6
If c <> n Then ActiveSheet.Cells(l, n) = ""
Next
'débloque les évènnements
Application.EnableEvents = True

End Sub
 
Re : Liste de validation

Bonjour Sousou
Ouha !!!
Vu de mon peu de connaissance.
Je dirai qui faudrait que j'écrive ces lignes de code dans une macro ou quelque chose de ce genre.
Y aurai t il un tutoriel ou je puisse comprendre et mettre en application?

Merci
 
Re : Liste de validation

Bonjour,
Je vous remercie pour l'attention que vous porter à mon problème.
Ne voulant pas rester novice toute ma vie, je vais reprendre ma question le code que vous avez produit doit être écrit où?
Je ne connais pas bien le site mais je suppose qu'il existe des tutoriels me permettant de m'exercer.
 
Re : Liste de validation

RE
Tu trouveras dans le fichier transmis par yasmin les infos, mais faut chercher un peu.

Va dans macro/éditeurvisualbasic.
Tu trouveras ton projet.
Dans ton cas le code est écrit dans feuil1 puisque c'est l'action 'change' qui va le faire fonctionner
Quant la feuille change, on vérifie si ce sont les cellules qui nous intéressent, et on modifie en conséquence
 
Re : Liste de validation

Coucou à tous,
En effet Dugenou la MFC pourrai être une solution mais les adhérents ne seront pas assez ordonnés pour respecter cette règle.
Yasemin et Sousou la solution que vous me proposez fonctionne bien.
Il reste un petit souci si je sélectionne un matériel et ensuite je note une date de retour prévu ou une date de retour ou une note, je perd le matériel.
De plus pour uploader le fichier à moins de 50 Ko j'ai supprimer des lignes.
Donc de recommence avec les ligne du dessus.
De plus je tiens à vous remercier car j'ai découvert VBA editor et je vais pouvoir me penché sur les tutoriels.

Merci
 

Pièces jointes

Re : Liste de validation

Effectivement.
Voici une correction

Private Sub Worksheet_Change(ByVal Target As Range)
'Bloque les évènnements
l = Target.Row
c = Target.Column
If c > 2 And c < 7 Then
Application.EnableEvents = False
'Efface si autres choix

For n = 3 To 6
If c <> n Then ActiveSheet.Cells(l, n) = ""
Next
'débloque les évènnements
Application.EnableEvents = True
End If
End Sub
 
Re : Liste de validation

Bonjour à tous,
Je vous remercie d'être aussi présent pour me rendre service.
Je désir que le programme que vous composez fonctionne de la ligne 5 à la ligne 103 donc j'ai tenter d'imaginé

Private Sub Worksheet_Change(ByVal Target As Range)
'Bloque les évènnements
l = Target.Row
c = Target.Column
If l > 4 And l < 104 Then
If c > 2 And c < 7 Then
End If
Application.EnableEvents = False
'Efface si autres choix

For n = 3 To 6
If c <> n Then ActiveSheet.Cells(l, n) = ""
Next
'débloque les évènnements
Application.EnableEvents = True
End If
End Sub

En rouge ma composition,
Est ce juste et écrit au bon endroit???
merci merci merci
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

N
Réponses
13
Affichages
2 K
Nenesse45
N
M
Réponses
2
Affichages
1 K
moialbert2
M
D
Réponses
9
Affichages
2 K
Damiendec
D
X
Réponses
6
Affichages
892
S
Réponses
2
Affichages
7 K
S
P
Réponses
11
Affichages
23 K
PhobosPalace
P
Retour