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 :

Comment manipuler Speadsheet dans un Userform


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 17
    Points : 20
    Points
    20
    Par défaut Comment manipuler Speadsheet dans un Userform
    Bonjour,

    Actuellement je suis en train de travailler sur un UserForm en Excel et je voudrais afficher une feuille de calcul dans celui-ci qui contiendrait les données contenues dans un fichier text.
    Mon problème c'est au niveau de la manipulation de ce contrôle spreadsheet qui me semble un peu bizarre.

    Voici mon code :
    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
    28
    29
    30
     
    Private Sub Spreadsheet1_Initialize()
    Dim oFSO As Scripting.FileSystemObject
    Dim oFl As Scripting.File
    Dim oTxt As Scripting.TextStream
    Dim Text, titre, Tableau As String
    Dim tmp As String
    Dim taux, prevision As Double
    Dim i As Integer
    'Instanciation du FSO
    Set oFSO = New Scripting.FileSystemObject
    Set oFl = oFSO.GetFile("Z:\Mes Documents\Projet Pro\taux_20110101.txt")
    Set oTxt = oFl.OpenAsTextStream(ForReading)
    i = 1
    With oTxt
        While Not .AtEndOfStream
            Text = oTxt.ReadLine
            'Découper la chaine et extraire les données
            Tableau = Split(Text, ";")
            titre = CStr(Tableau(0))
            taux = CDbl(Tableau(1))
            prevision = CDbl(Tableau(2))
            UserForm1.Spreadsheet1.Worksheets(1).Activate
            UserForm1.Spreadsheet1.Worksheets(1).Range("A" & i).Value = titre
            UserForm1.Spreadsheet1.Worksheets(1).Range("B" & i).Value = taux
            UserForm1.Spreadsheet1.Worksheets(1).Range("C" & i).Value = prevision
            i = i + 1
        Wend
    End With
    End Sub
    Rien ne semble se passer quand je lance le projet, si quelqu'un pourrait m'aider svp.

    Merci

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonjour
    peut être mettre le code dans Userform_Initialize

    Je ne peux pas tester, mais y a t-il un évènement Initialize pour un contrôle Spreadsheet?
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 17
    Points : 20
    Points
    20
    Par défaut
    Il y a un évènement Initialize pour Spreadsheet. Quand j'ai mis le code dans UserForm il n'a pas reconnu le FSO.

  4. #4
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    As-tu coché Microsoft Scripting Runtime dans les références?
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

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

Discussions similaires

  1. Comment manipuler RowIsVisible dans un MSHFlexGrid
    Par ProgElecT dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 20/12/2012, 13h11
  2. Comment mettre a jour des calculs dans un userform
    Par alex.a dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 18/06/2007, 17h59
  3. Comment Manipuler des objets dans une liste de type TList ?
    Par PadawanDuDelphi dans le forum Delphi
    Réponses: 1
    Dernier message: 02/11/2006, 15h40
  4. Réponses: 2
    Dernier message: 15/10/2005, 18h47

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