IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Public vs Static [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 660
    Par défaut Public vs Static
    Bonjour,

    (Encore) un petit problème sur la déclaration des variables.

    Dans un UF, je récupère ces valeurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub UserForm_Initialize()
     
        TextBox4.Value = Titre 'Format(Feuil16.[dg3], "dd/mm/yy")  'date version
        TextBox3.Value = J_validité & " Jour(s)" 'Feuil16.[dg2] & " Jour(s)"
        TextBox2.Value = Format(date_péremption, "dd/mm/yyyy") 'Format(Feuil16.[dg1], "dd/mm/yy")  'date validité
    Comme le montrent les commentaires, je les récupérais initialement depuis une Feuille mais je souhaite éviter cette étape intermédiaire.

    Ces valeurs se situent dans ThisWorkbook/Private Sub Workbook_Open() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Titre = ThisWorkbook.BuiltinDocumentProperties("title").Value
    date_péremption = "30/06/2021"
    J_validité = date_péremption - Date
    Dans un module standard, j'ai déclaré ces variables Public
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public date_péremption As Date
    Public J_validité As Integer
    Public Titre As String
    Sous certains effets que je n'ai pas clairement identifiés, le UF n'affiche plus les valeurs correctement récupérées à l’exécution de Workbook_Open()

    Je m'en doutais un peu alors j'ai fait des tests en utilisant Static pour la déclaration des variables, en vain !
    A priori, je pensais combiner Public et Static mais ça n'est manifestement pas possible.

    En vous remerciant par avance pour vos lumières,
    Cordialement,
    jp

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Par défaut
    Salut, c'est pas possible, si tu veux conserver des variables il faut les mettre dans des cellules de ton classeur ou alors des fichiers textes dans le même dossier par exemple (mais dédier une feuille de ton classeur me parait mieux). Tu peux nommer tes cellules pour les récupérer plus facilement et même faire des fonctions de récupération de variables pour faciliter le développement.

    Enfin si c'est bien ça ta question car c'est pas super clair

  3. #3
    Membre chevronné
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Par défaut
    Attends mais c'est toi qui a déjà ouvert une discussion a ce sujet

    https://www.developpez.net/forums/d1...blic-p-static/

    Il avait déjà été dit exactement la même chose...

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 660
    Par défaut
    Bonjour,

    si tu veux conserver des variables il faut les mettre dans des cellules de ton classeur
    Dommage, c'est ce que je voulais éviter !
    Merci,
    Cdt
    jp

  5. #5
    Rédacteur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2013
    Messages
    1 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 1 035
    Par défaut
    Bonjour.
    Vous pouvez sauvegarder vos données dans le classeur, dans un autre, dans une base de données, dans un fichier texte, etc. Ou tout simplement dans les propriétés personnalisées du classeur puisque c'est justement fait pour cela. Mais tout dépend de ce que vous souhaitez faire, montrer ou pas, securiser ou pas.
    Cordialement.

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 660
    Par défaut
    Bonjour,

    (...) sauvegarder vos données dans le classeur, dans un autre, dans une base de données, dans un fichier texte, etc.
    Je comprends qu'il faut passer par cette étape intermédiaire, ce que je ne voulais pas mais ce à quoi j'ai dû me résoudre.
    Au risque de m'attirer les foudres des éminents contributeurs, je trouve un peu étrange (bénéfice du candide) qu'Excel n'ait pas prévu de combiner Public et Static...

    Merci pour votre précision,
    Cordialement,
    jp

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Methode public static void main (String [] args)
    Par jeremypd dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 09/01/2017, 10h53
  2. public static function = public function
    Par Jcpan dans le forum Langage
    Réponses: 4
    Dernier message: 30/03/2009, 15h28
  3. Protection d'un tableau public static final
    Par sachem dans le forum Collection et Stream
    Réponses: 7
    Dernier message: 07/02/2009, 21h20
  4. Différence entre public static
    Par moooona dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 24/05/2008, 15h23
  5. public static []tableau (double []tableau) ?
    Par rXpCH dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 29/02/2008, 08h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo