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 :

[VBA-E] Problème avec une UserForm


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 73
    Par défaut [VBA-E] Problème avec une UserForm
    Bonjour à tous,
    j'ai un petit problème, je n'arrive pas à renvoyer des données d'un fichier excel vers une userform d'un autre fichier excel. En plus détaillé, je dispose d'un fichier qui à l'ouverture lance une userform qui dans son initialisation ouvre un autre fichier excel(mais on ne le voit pas c'est fait exprès) dans lequel elle doit aller chercher ses données. Le problème c'est que soit elle me retourne un zéro soit rien.
    Voici un petit bout de mon code, si à une idée.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        If MyYear = 2007 Then
                If MyMonth = 5 Then
                    Controls("TB1").Value = Workbooks("testxy.xls").Sheets("2007").Cells(258, 6)
                End If
       Elseif ...
    Merci d'avance
    Amélie

  2. #2
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 342
    Par défaut
    C'est quoi MyMonth et MyYear ?

    Effectivement ut as mis un petit bout de ton code, mais avec ces 2 lignes on va pouvoir difficilement t'aider

    Tu as essayé de faire du pas a pas pour voir les valeurs que prenait tes références, etc.. ?
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Déjà, si tu dois travailler dans ton second classeur, je déclarerais l'un et "l'autre classeur" en tête de code de l'userform
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim CL1 as workbook 'le classeur contenant l'userform
    Dim CL2 as workbook 'l'autre classeur
    Ensuite, j'instancierais CL1 dans Userform_Initialize
    et CL2 à l'ouverture de l'autre classeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set CL2 = Application.Workbooks.Open _
            (Filename:=Chemin & Workbooks("testxy.xls")
    Ainsi tu pourras travailler sans avoir à trainer leurs noms
    Enfin, pour ton test, je mettrais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        If MyYear = 2007 Then
                If MyMonth = 5 Then
                    Me.Controls("TB1").Value = CL2.WorkSheets("2007").Cells(258, 6).value '(***)
                End If
    Quoique, vu ton test, j'utiliserais sans doute un select case sur le mois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        Select Case MyMonth
              Case 1
                    '....
              Case 2
                    '....
              Case 5
                    'ton test (***)
              Case ...
                    '...
              Case else
        End select
    Juste une idée

  4. #4
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 73
    Par défaut
    En fait le debut de mon code c'est :
    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 UserForm_Initialize()
        Workbooks.Open "H:\Etudes STAT\_PROJET EN COURS\Amélie\testxy.xls"
    Application.Visible = False
        If MyYear = 2007 Then
                If MyMonth = 5 Then
                    Controls("TB1").Value = Workbooks("testxy.xls").Sheets("2007").Cells(258, 6)
                End If
    Application.Visible = True
     
    Application.DisplayAlerts = False
    Windows("testxy.xls").Close
    Application.DisplayAlerts = True
    Je vais essayer ce que tu m'as dit je vous redis si ca fonctionne.
    Merci beaucoup

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Ajoute au code que je t'ai donné
    et tu pourras supprimer les deux lignes
    Application.DisplayAlerts = False
    Application.DisplayAlerts = True

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 73
    Par défaut
    ca ne m'affiche rien dans ma userform. A aucun moment le code bloque puisque je fais tout en pas à pas mais ca ne renvoie rien du tout.
    J'ai remplacé Application.display = false/true par ce que tu m'as dit, c'est bien je gagne 2 ligne pour la même chose.
    Merci

  7. #7
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 342
    Par défaut
    question totalement bete : c'est quoi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Controls("TB1").Value
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

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

Discussions similaires

  1. Problème avec une requête en VBA
    Par Alien_psy dans le forum IHM
    Réponses: 7
    Dernier message: 19/02/2013, 11h55
  2. Problème avec une requète SQL en vba
    Par mephistomauvis dans le forum VBA Access
    Réponses: 2
    Dernier message: 22/12/2008, 19h41
  3. Problème avec une instruction VBA
    Par Jpeg69 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 22/05/2007, 12h58
  4. [VBA-E] problème avec une formule
    Par jamelie dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 25/04/2007, 11h13
  5. [VBA-E] Problème avec ShowModal dans un UserForm
    Par damsmut dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/07/2006, 09h19

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