Microsoft 365 Excel 365 - Accès à une page selon valeur cellule

  • Initiateur de la discussion Initiateur de la discussion jp.org
  • 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 !

jp.org

XLDnaute Nouveau
Bonjour,

J'ai crée un bouton qui vérifie si la valeur de la cellule D3 correspond à liste de la colonne des solutions possibles.
Si la condition est rempli, j'ai un msgbox qui valide et une nouvelle feuille s'affiche. Si la condition n'est pas rempli, un message d'erreur apparaît.

Voici mon code : Le nom solution correspond aux valeurs de la colonne A. J'ai essayé avec une seule cellule mais rien ne change.

1616276522641.png


Avez-vous des idées ?

Bonne soirée.
 
ton erreur 13 "Incompatibilité de type" est due au contenu de la cellule D3 de la feuille "BD" ET / OU au contenu de ce qui est référencé par ton nom défini _solution ; dans les 2 cas : j'peux pas t'aider davantage sans voir ton fichier ; aussi, je te propose de l'envoyer (sans données confidentielles) ; dans ton prochain post en cours d'édition, sers-toi du bouton "Joindre un fichier" qui sera situé en dessous. 🙂

soan
 
@jp.org

ton fichier en retour. 🙂

* j'ai préféré utiliser une autre méthode plus adaptée

* j'ai supprimé ton nom défini

je te laisse faire le test ; voici le nouveau code VBA :

VB:
Option Explicit

Sub accest()
  Dim cel As Range
  With Worksheets("BD")
    If .[D3] = "" Then GoTo 1
    Set cel = .Columns(1).Find(.[D3], , -4163, 1, 1, , True)
  End With
  If Not cel Is Nothing Then
    Worksheets("TEST").Select: MsgBox "C'est Ok !": Exit Sub
  End If
1 MsgBox "Accès refusé."
End Sub

note bien que l'accès est refusé dans ces 2 cas :

* si D3 est vide

* si D3 est non vide et non présent en colonne A

soan
 

Pièces jointes

Dernière édition:
-4163 : idem que xlValues

1er 1 : xlWhole ; 2ème 1 : xlByRows

le True est pour MatchCase : respect de la casse
➯ ça différencie les majuscules des minuscules

c'est mieux pour des mots de passe ; sinon,
il te suffit de mettre :

.Find(.[D3], , -4163, 1, 1)

soan
 
- 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

Retour