VBA : subtilité inconnue et incompréhensible
Résolu/Fermé
zaXoular
-
Modifié par zaXoular le 21/10/2011 à 16:12
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 25 oct. 2011 à 17:17
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 25 oct. 2011 à 17:17
A voir également:
- VBA : subtilité inconnue et incompréhensible
- Mkdir vba ✓ - Forum VB / VBA
- Excel compter cellule couleur sans vba - Guide
- Vba range avec variable ✓ - Forum VB / VBA
- Autofill vba ✓ - Forum Excel
- L'indice n'appartient pas à la sélection vba ✓ - Forum Programmation
2 réponses
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
Modifié par lermite222 le 21/10/2011 à 17:00
Modifié par lermite222 le 21/10/2011 à 17:00
Bonjour,
Les transferts entre feuille ne sont pas si évident, essaye avec..
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Les transferts entre feuille ne sont pas si évident, essaye avec..
Private Sub Worksheet_Activate() dim MotPasse as variant MotPasse = Sheets("LeNomDeLaFeuille").Range("MDP").Value MsgBox "bonjour, le mot de passe est : " & MotPasse ActiveSheet.Unprotect (MotPasse ) End Sub
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
Modifié par lermite222 le 25/10/2011 à 17:29
Modifié par lermite222 le 25/10/2011 à 17:29
Re,
Tu confond variable globale et Nom de plage.
Une plage de cellule n'est accessible que dans la feuille où elle est située.
Sauf si tu nomme le chemin complet de la plage, c'est ce que je t'ai montrer.
Une Variable globale c'est dans un module général et doit être déclarée.
Public MaVariable As String
A+
EDIT :
Exemple :
Dans un module général tu met
et dans le Open..
et dans les Activate des feuilles,
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Tu confond variable globale et Nom de plage.
Une plage de cellule n'est accessible que dans la feuille où elle est située.
Sauf si tu nomme le chemin complet de la plage, c'est ce que je t'ai montrer.
Une Variable globale c'est dans un module général et doit être déclarée.
Public MaVariable As String
A+
EDIT :
Exemple :
Dans un module général tu met
Public MotDePasse As String
et dans le Open..
Private Sub Workbook_Open() MotDePasse = Range("MDP").Value MsgBox "bonjour, le mot de passe est : " & MotDePasse ActiveSheet.Unprotect MotDePasse End Sub
et dans les Activate des feuilles,
Private Sub Worksheet_Activate() MsgBox "bonjour, le mot de passe est : " & MotDePasse ActiveSheet.Unprotect MotDePasse End Sub
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
25 oct. 2011 à 09:18
Effectivement j'ai du faire comme ça pour m'en sortir,
par contre je n'ai toujours pas compris pourquoi à l'intérieur d'une worksheets on ne peut pas pointer directement sur une variable déclarer au niveau global dans le classeur.
Je suppose que c'est là une preuve des subtilités du language VBA et des logiciels microsoft.
Encore Merci de votre aide....