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

SDK Discussion :

[VBA]utiliser une variable récupérée par inputbox


Sujet :

SDK

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 84
    Par défaut [VBA]utiliser une variable récupérée par inputbox
    bonjour,
    un utilisateur me demande une chose qui ne me semblait pas trop compliquée :
    pouvoir à chaque rafraichissement saisir le nombre de jours ouvrés et l'exploiter ensuite dans son document.

    Comme cette info n'est n'est nécessaire que pour 1 utilisateur, je ne vais pas alourdir l'univers d'un énieme objet. et comme j'ai de très mauvais souvenirs des objets personnels je ne vais pas exploiter cette solution non plus.

    Donc
    j'ai commencé par créer un inputbox pour poser la question

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Dim sNbre
    Dim iNbre As Integer
     
    Private Sub Document_BeforeRefresh(Cancel As Boolean)
     
     
        sNbre = InputBox("Quel nombre ?", , iNbre)
        iNbre = CInt(sNbre)
     
    End Sub
    et ensuite je bloque car je ne sais pas comment récuperer dans le document la valeur de la variable iNbre !
    Quelqu'un peut m'aider ?

  2. #2
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Par défaut
    Je ne discuterai pas de la méthode choisie ....

    Pour la suite de ton VB il te faut créer une variable équivalente à Définir une Variable ou Ajouter une Varable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Add(Formula As String, [Name As String],) As DocumentVariable
    Précisez la VERSION !
    Un message vous a aidé ? Votez en cliquant sur Pensez au bouton
    Tutoriels BO et FAQ BO
    "A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!"

  3. #3
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 84
    Par défaut
    Merci pour cette réponse, a partir de ton exemple j'ai pu me remettre sur les rails.

    j'ai brodé un peu autour pour gérér la création de la variable et ensuite sa modification à chaque raffraichissement.

    ça marche nickel.

    (mr le directeur va être content)

  4. #4
    Rédacteur
    Avatar de Bruno2r
    Homme Profil pro
    Exploitation des données
    Inscrit en
    Décembre 2006
    Messages
    2 566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Exploitation des données
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 566
    Par défaut
    Merci d'avoir pensé au
    Pourrais tu ta broderie autour de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ADD(Formula AS String, [Name AS String],) AS DocumentVariable
    histoire que le prochain puisse en profiter, Merci.
    Précisez la VERSION !
    Un message vous a aidé ? Votez en cliquant sur Pensez au bouton
    Tutoriels BO et FAQ BO
    "A vouloir repousser ses limites ... On risque d'en prendre connaissance !!!"

  5. #5
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 84
    Par défaut
    voila mon code , il y a tout de meme un disfonctionnement :
    entre la création de la variable et le 1er raffraichissement , j'ai été obligé de fermer le document pour que la variable change à chaque raffraichissement

    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
    20
    21
    22
    23
    24
    25
    26
    27
    Dim sNbre
     
    Private Sub Document_BeforeRefresh(Cancel As Boolean)
     
    Dim cI As Integer
    Dim cJ As Integer
     
    sNbre = InputBox("Quel nombre ?", , sNbre)
    'le nombre de variables
    cI = Application.ActiveDocument.DocumentVariables.Count
    'on boucle pour trouver notre variable
    cJ = 0
    For i = 1 To cI:
        'on met a jour la formule
        If Application.ActiveDocument.DocumentVariables.Item(i).Name = "NbreDeJourOuvre_VBA" Then
            cJ = 1
            Application.ActiveDocument.DocumentVariables.Item(i).Formula = "= " + sNbre
        End If
     
    Next
    'la 1ere fois on créé la formule
    If cJ <> 1 Then
        Application.ActiveDocument.DocumentVariables.add "= " + sNbre, "NbreDeJourOuvre_VBA"
    End If
     
     
    End Sub

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

Discussions similaires

  1. [E-02] utiliser une variable récupérée par inputbox
    Par Picotman56 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/02/2009, 10h33
  2. [Tableaux] Utiliser une variable passée par URL
    Par dahu17 dans le forum Langage
    Réponses: 2
    Dernier message: 09/02/2008, 16h57
  3. Réponses: 9
    Dernier message: 16/02/2007, 15h10
  4. [SQL] Comment utiliser dans une requête une variable passée par URL
    Par foffa dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/08/2006, 12h27
  5. [VBA-E]Utiliser une variable dans une formule
    Par bossu dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 04/06/2006, 15h25

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