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

VB 6 et antérieur Discussion :

BDD Excel avec VB6


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 35
    Par défaut BDD Excel avec VB6
    Bonsoir à tous,
    Voilà j'ai une application développée en VBA sous excel avec des feuilles qui contiennent les données de cette base.

    Bon bah je me suis mis en tête de refaire cette application VBA EXCEL mais en VB6 et BDD Excel.

    Pour décrire un peu le truc, j'ai un truc qui permet de lire, écrire et modifier ces données + des feuilles contenant des formules Excel et qui calcul des indicateurs à partir de ces données.

    J'ai commencé à faire une truc juste pour lire les données et je rencontre déjà un souci -->il ne se passe rien dans ma list1.
    Et je pense que ce n'est pas le dernier des soucis que je vais rencontré.

    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
    Dim appExcel As Excel.Application 'Application Excel
    Dim wbExcel As Excel.Workbook 'Classeur Excel
    Dim wsExcel As Excel.Worksheet 'Feuille Excel
    Private Sub Command1_Click()
    Dim num As Integer
    Dim i As Integer
    Dim ValToAdd As String
    num = 13
    i = 1
        Set appExcel = CreateObject("Excel.Application")
        Set wbExcel = appExcel.Workbooks.Open(App.Path + "\B2D\B2D_VCT_2007.xls")
        Set wsExcel = wbExcel.Worksheets(num)
        Form2.Show
        While wsExcel.Cells(i, 1) <> ""
            ValToAdd = wsExcel.Cells(i, 1)
            List1.AddItem ValToAdd
            i = i + 1
        Wend
    End Sub
    et il me sort une erreur : Un objet est requis
    sur la ligne
    Pouvez vous m'aider?
    MERCI d'avance

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Set wbExcel = appExcel.Workbooks.Open(App.Path + "\B2D\B2D_VCT_2007.xls")
    Il est preferable d'utiliser le & plutôt que le + quand il s'ajit du litéral.
    Tout laisse penser que List1 n'existe pas, il a peut être été renommé ?
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 35
    Par défaut
    Bonsoir ProgElect et merci pour ta réponse.
    J'ai été trop vite j'avais ma list dans le form2 alors que le code était dans le form1! enfin un peu fatigué.
    J'ai corrigé et j'ai fais ça:
    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
    Dim appExcel As Excel.Application
    Dim wbExcel As Excel.Workbook
    Dim wsExcel As Excel.Worksheet
    Private Sub Command1_Click()
    Dim num As Integer
    Dim i As Integer
    Dim ValToAdd As String
    num = 4
    i = 1
     
        Set appExcel = CreateObject("Excel.Application")
        Set wbExcel = appExcel.Workbooks.Open(App.Path & "\B2D\B2D_VCT_2007.xls")
        Set wsExcel = wbExcel.Worksheets(num)
        While wsExcel.Cells(i, 1) <> ""
            ValToAdd = wsExcel.Cells(i, 1)
            List1.AddItem ValToAdd
            i = i + 1
        Wend
    End Sub
    ça marche mieux mais je voudrais qu'il m'affiche les lignes entières de ma feuille et non juste les cellules de la colonne A

    Merci

  4. #4
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ValToAdd = wsExcel.Cells(i, 1) & wsExcel.Cells(i, 2) & wsExcel.Cells(i, 3)
    Si 3 colonnes à recuperer, avec un & " " & , eventuelement pour separer les colonnes récuperer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ValToAdd = wsExcel.Cells(i, 1) & " " & wsExcel.Cells(i, 2) & " " &  wsExcel.Cells(i, 3)
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 35
    Par défaut
    Merci mais si j'ai 30 colonnes, il faut que ke je fasse 30fois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ValToAdd = wsExcel.Cells(i, 1) & " " & wsExcel.Cells(i, 2) & " " &  wsExcel.Cells(i, 3)..............
    je peux surment faire un boucle comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    While wsExcel.Cells(i, 7) <> ""
            'ValToAdd = wsExcel.Cells(i, 1)
            'ValToAdd = wsExcel.Cells(i, 1) & wsExcel.Cells(i, 2) & wsExcel.Cells(i, 3)
            For j = 1 To 30
                ValToAdd = wsExcel.Cells(i, j)
            List1.AddItem ValToAdd
            Next
     
            i = i + 1
     
        Wend
    mais il m'affiche tout sur une colonne dans la liste

  6. #6
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    While wsExcel.Cells(i, 7) <> ""
       ValToAdd = ""    
           For j = 1 To 30
                ValToAdd = ValToAdd & wsExcel.Cells(i, j) & " "
            Next
            List1.AddItem ValToAdd
            i = i + 1
    Wend
    Non verifié, mais sa doit faire
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

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

Discussions similaires

  1. utilisation excel avec VB6
    Par yakup.67 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 19/06/2007, 15h30
  2. ouvrir un fichier excel avec VB6
    Par sweety2094 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 05/04/2007, 13h06
  3. Mise en page d'Excel avec VB6 ?
    Par sebajedi dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 19/12/2006, 14h01
  4. Traitement fichier excel avec vb6
    Par couscoussier dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 12/09/2006, 16h15
  5. [VB6] changement du profil du fic. excel avec vb6
    Par couscoussier dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 17/05/2006, 12h57

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