Bonjour membres du forum,
Comment entrer des données dans une feuille Excel protégée grâce à un userform ?
Je souhaite entrer des données sur une feuille Excel protègée par mot de passe sans le lui ôter.
Et cela grâce à un userform.
Cordialement.
Bonjour membres du forum,
Comment entrer des données dans une feuille Excel protégée grâce à un userform ?
Je souhaite entrer des données sur une feuille Excel protègée par mot de passe sans le lui ôter.
Et cela grâce à un userform.
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Bonjour,
Pour écrire dans une ou plusieurs cellules d'une feuille protégée, il suffit d'utiliser la méthode Protect à l'aide de l'argument nommé UserInterfaceOnly avec comme valeur True ainsi que l'argument nommé Password en y insérant le mot de passe comme valeur
Exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Sub t() Dim sht As Worksheet Set sht = ThisWorkbook.Worksheets("Data") With sht .Protect UserInterfaceOnly:=True, Password:="" .Range("I2").Value = "Test" End With Set sht = Nothing End Sub
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Bonsoir Philippe Tulliez,
Merci infiniment pour votre réponse précieuse.
Désolé pour le retard.
Donnez moi un peu de temps pour les essais.
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Bonjour Philippe Tulliez,
Désolé d'avoir passé assez de temps pour répondre!
voici la Zone unique d'une UserForm où devrais je entrer un montant numérique et l'insérer sur là
feuille Excel (voir Capture d'écran).
Je viens de créer une UserForm
Pour le reste il va falloir m'aider !
Pièce jointe
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Bonjour,
C'est que vraisemblablement votre projet n'est pas urgent.Désolé d'avoir passé assez de temps pour répondre!
Je pense avoir publié une solution répondant à votre demandePour le reste il va falloir m'aider !
Mis à part d'avoir inséré un UserForm et un TextBox, qu'avez-vous fait d'autre ?
Votre réponse avant Noël ?
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Bonjour Philippe Tulliez;,
Pourriez vous me donner le lien de votre solution publiée ?
Merci infiniment.
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Bonjour,
Vous plaisantez, vous l'avez vous même recopiée ?
C'est ma réponse fil #2
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Bonjour,
Sans bien entendu avoir analysé votre procédure, si vous souhaitez que la procédure nommée t renvoie une valeur, il y a lieu de remplacer Sub par Function mais cela ne fonctionnera pas en tant que tel car vous n'avez pas programmé celle-ci pour quelle renvoie une valeur.
Je vous suggère la lecture de ce tutoriel Les fonctions personnelles dans Excel
Si votre cellule protégée doit contenir une somme, peut-être serait-il plus simple d'utiliser une fonction native d'excel ce qui vous éviterait d'avoir à demander l'encodage dans une zone de texte pour l'écrire ensuite dans une cellule.
Sans connaître la finalité de votre projet, nous risquons d'échanger longuement sans aboutir à une solution.
Cela sort un peu de votre demande initiale qui était de connaître la manière d'écrire dans la cellule d'une feuille protégée.
Il serait sans doute préférable d'ouvrir une nouvelle discussion avec un nouveau sujet
Edit
Je n'avais pas vu que vous utilisiez la procédure que j'avais publiée
Voici une exemple ci-dessous
Attention que le TextBox doit se nommer TextBox1 et que la feuille protégée doit être nommée Data et attention également que l'écriture dans mon exemple se fait en cellule I2
Vous devriez commencer par le début et lire des tutoriels pour apprendre à coder le VBA car faire du Copier/Coller sans comprendre ne va pas vous faire avancer et ce n'est pas à un enseignant, si j'en crois votre profil, que je dois le préciser.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub TextBox1_Change() t End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Sub t() Dim sht As Worksheet Set sht = ThisWorkbook.Worksheets("Data") With sht .Protect UserInterfaceOnly:=True, Password:="" .Range("I2").Value = Me.TextBox1.Value End With Set sht = Nothing End Sub
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Bonsoir Philippe Tulliez,
Merci pour tous les bonnes suggestions que vous m'avez conférés !
Sauf votre respect, permettez moi de vous poster une pièce jointe afin que vous m'aidiez à la
conception d'une UserForm ?
Le mot de passe: OUMAR
J'ai trouver un exemple de ce que je recherche ici https://www.developpez.net/forums/d4...ille-protegee/
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Salut
Normal que vous ayez des erreurs, vous n'avez pas adapté le code à votre classeur Brouillon.xlsm!
Worksheets("Data"),vs Worksheets("Feuil1").
Post#4 quel est l'intérêt de créer un USF pour saisir une valeur en G5 puisque, sauf erreur, G5 est la somme des montants de G8 à Gxx ? A moins que vous vouliez recalculer les montants à partir de G8 fonction de MoyennePartage, et tauxPartage ?
Peut-être pourriez-vous commencer par consulter la FAQ et lire certains tutos ici et là !
Euh ... mot de passe invalide !
Et en plus pas une ébauche d'USF dans votre classeur !
"Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
UR - ESIROI - GPME/CG/DCG8
QTH :21°19'18"S - 055°25'32"E
Inutile de me contacter par MP
Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur
Bonjour hyperion13,
Content de vous retrouver !
Le mot de passe mettez le en miniscule.
Je ne recherche pas à refaire les calculs car
ça l'est déjà.
Ce que je voudrais est tout simplement
d'entrer un nouveau montant qu'Excel est chargé
de présenter les différentes parts.
Le montant doit être inséré dans la cellule au
dessus de la colonne Montant EMS.
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Euh ... majuscule ou minuscule, ça ne marche pas ! J'avais déjà vérifié !
Vous faites des calculs sur un classeur alors que vous avez une bdd Acc qui les réalise déjà !
Et ce nouveau montant, vous allez le recalculer dans votre bdd Acc ?
Je vais toutefois vous rappeler que les contributeurs de DEV sont tous des bénévoles qui ont ou non une activité professionnelle.
Je vous conseille vivement de consulter la FAQ et lire certains tutos ici et là !
Et vous ne recalculez pas SML et HDK ?
Et je ne comprends pas ce double-emploi bdd Acc et ce classeur Xl !
"Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
UR - ESIROI - GPME/CG/DCG8
QTH :21°19'18"S - 055°25'32"E
Inutile de me contacter par MP
Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur
Comment adapter le code:
?
Code : Sélectionner tout - Visualiser dans une fenêtre à part Worksheets("Data"),vs Worksheets("Feuil1")
Je souhaiterais apprendre le VBA Excel et même Word.Post#4 quel est l'intérêt de créer un USF pour saisir une valeur en G5 puisque, sauf erreur, G5 est la somme des montants de G8 à Gxx ? A moins que vous vouliez recalculer les montants à partir de G8 fonction de MoyennePartage, et tauxPartage ?
Merci infiniment de m'avoir orienté !
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Bonjour hyperion13,
Je vous présente ce que j'ai réalisé à partir de vos conseils:Peut-être pourriez-vous commencer par consulter la FAQ et lire certains tutos ici et là !
Pièce jointe MP: oumar
Je suis conscient des énormes aides que vous nous apportez Nous vous sommes infiniment reconnaissant.
Bien! Pourriez vous me donner un coup de main concernant la zone de texte et la commande enregistrer. Le montant reçu par le TextBox
est enregistré dans la cellule grâce au code du bouton enregistrer.
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Bonjour,
Pour comprendre comment gérer les UserForm et les contrôles tels que Les TextBox, CommandButton, etc. je vous conseille la lecture des ces deux tutoriels
Pour débuter en VBA, quelques tutoriels
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Vous relancez une discussion qui date du 11/2021.
Entre temps, et cela est évident, vous n'avez pas pris la peine de consulter des tutos à propos de la création d'USF et de leurs manipulations. Les liens sont la FAQ, Utiliser les USF et Utiliser les contrôles dans un USF.
Philippe Tulliez que je salue au passage indique dans son Post#9 que vous devez adapter le code qu'il a fourni à votre IHM.
Il est évident que la feuille de calculs Worksheets("Data"),n'existe pas dans votre classeur. Et vous insistez dans votre démarche sans chercher à comprendre. D'où ma remarque ci-dessous.
Majuscule ou minuscule ça ne marche pas !
A l'évidence, vous n'avez pas fait de recherche et/ou lu les tutos.
Un conseil pour les débutants, évitez de donner des noms exotiques aux USF et objets d'USF. Gardez les noms génériques fournis par l'assistant. Une fois que vous aurez des heures de vol à votre actif vous pourrez commencer à "customiser" vos USF.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Option Explicit Private Sub CommandButton1_Click() ' Enregistrer Worksheets("PARTAGE GLOBAL").Range("G5").Value = TextBox1.Value End Sub Private Sub CommandButton2_Click() ' Fermer Unload Me End Sub
"Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
UR - ESIROI - GPME/CG/DCG8
QTH :21°19'18"S - 055°25'32"E
Inutile de me contacter par MP
Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur
Bonsoir Membres du forum,
bonsoir hyperion13,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub UserFormEnregistrerMontantant_Change() t End Sub Sub t() Dim sht As Worksheet Set sht = ThisWorkbook.Worksheets("PARTAGE GLOBAL") With sht .Protect UserInterfaceOnly:=True, Password:="" .Range("G5").Value = "Test" End With Set sht = Nothing End SubMessages d'erreus:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Private Sub CmdButtonENREGISTRER_Click() ' Enregistrer Worksheet("PARTAGE GLOBAL").Range("G5").Value = UserFormEnregistrerMontantant.Value End Sub Private Sub CmdButtonFERMER_Click() Unload Me End Sub 'avec la virgule valide(décimale) Private Sub TextBoxInsererMontant_Change() On Error Resume Next If Not IsNumeric(Right(TextBoxInsererMontant, 1)) And Right(TextBoxInsererMontant, 1) <> "," Then MsgBox "Le caractere saisi n'est pas valide" TextBoxInsererMontant = Left(TextBoxInsererMontant, Len(TextBoxInsererMontant) - 1) End If End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part Worksheets("PARTAGE GLOBAL"),vs Worksheets("PARTAGE GLOBAL")
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Bonjour,
Dans le deuxième code publié, première procédure il manque un s à Worksheet
Soit
Il est possible qu'il y ait d'autres soucis mais celui-là, je l'ai repéré immédiatement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub CmdButtonENREGISTRER_Click() ' Enregistrer Worksheets("PARTAGE GLOBAL").Range("G5").Value = UserFormEnregistrerMontantant.Value End Sub
Et dans votre dernière illustration la syntaxe est mauvaise
Que voulez-vous faire à l'ouverture du classeur ?
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Bonsoir Philippe Tulliez,
Franchement, je n'y arrive pas car je maitrise pas pour le moment le Vba Excel.
En attendant pourriez vous me résoudre notre discussion ?
Mon objectif principal (le post #4).
Le code de la commande enregistrer génère des erreurs.
Cordialement.
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager