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 :

affichage contenu listview dans classeur excel


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Par défaut affichage contenu listview dans classeur excel
    salut a tous.j'ai reussi a transporter les données du controle listview mais après la fermeture du classeur,j'ai cette erreur

    erreur d'execution 424
    un objet est requis
    comment faire pour resoudre ce probleme.voici le bout de code concerné:

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
     
    Public Sub Export_Excel(My_Listview As ListView, Nbr_Lignes As Integer, Nbr_Colonnes As Integer)
    Dim Appli As New Excel.Application
    Dim Ligne As String
    Dim LigneExcel As Integer
    Dim ColExcel As Integer
    Dim compt As Integer
    Dim comptcol As Integer
    Dim fso As New FileSystemObject
     
    'Rendre visible EXCEL
     Appli.Visible = True
     
     'Créer un nouveau classeur EXCEL initialisé à la ligne 1
     Appli.Workbooks.Add.Activate
     DoEvents
     LigneExcel = 1
     ColExcel = 1
     'MsgBox Appli.Workbooks.Count
     
    ' Affecter les données de la listbox dans les cellules de la feuille
     With ActiveWorkbook.Worksheets("Feuil1")
     
     'Insere le nom des entetes de colonnes
     For comptcol = 0 To Nbr_Colonnes - 1
          .Cells(LigneExcel, ColExcel) = My_Listview.ColumnHeaders(comptcol + 1)
          ColExcel = ColExcel + 1
     Next comptcol
     ColExcel = 1
     LigneExcel = LigneExcel + 1
     
     'Inscrire le contenu d'une listview dans la feuille 1 d'un classeur EXCEL
     For compt = 0 To My_Listview.ListItems.Count - 1
     'On boucle sur les colonnes
       For comptcol = 0 To Nbr_Colonnes - 1
         If comptcol = 0 Then
            .Cells(LigneExcel, ColExcel) = My_Listview.ListItems.Item(LigneExcel - 1)
        Else
            .Cells(LigneExcel, ColExcel) = My_Listview.ListItems.Item(LigneExcel - 1).ListSubItems(comptcol)
     
          End If
     
       ColExcel = ColExcel + 1
       Next comptcol
     
       ColExcel = 1
       LigneExcel = LigneExcel + 1
       Next compt
     
     End With
     
      'Pour mettre l'entête des colonnes en gras
      ActiveWorkbook.Worksheets("Feuil1").Range("A1:" & Chr(65 + Nbr_Colonnes - 1) & "1").Font.Bold = True
      'Pour ajuster les colonnes
      ActiveWorkbook.Worksheets("Feuil1").Range("A:" & Chr(65 + Nbr_Colonnes - 1)).Columns.AutoFit
     
      End Sub
    la ligne impliquée est la suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     .Cells(LigneExcel, ColExcel) = My_Listview.ListItems.Item(LigneExcel - 1).ListSubItems(comptcol)
    merci d'avance

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    Je n'ai pas testé ton code mais à première vue
    Si les ListItems ne comporte pas le même nombre de subItem le mode employé devrait provoquer une erreur
    A+

  3. #3
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    tiens voici un tutoriel à parcourir ..:

    Utiliser Excel à partir de Visual Basic par Sébastien Curutchet ..

    tu devrai t'en inspirer pour re-écrire totalement ton code en supprimant tous tes ActiveWorkBook, Activate... qui sont des sources d'erreurs...

Discussions similaires

  1. Réponses: 5
    Dernier message: 23/05/2009, 12h42
  2. Récup contenu signet dans cellule Excel
    Par Domino40 dans le forum VBA Word
    Réponses: 10
    Dernier message: 23/11/2008, 16h05
  3. Listview dans tableur Excel
    Par stephane.vetter dans le forum Excel
    Réponses: 2
    Dernier message: 14/02/2008, 16h00
  4. [ADO DAO] Ecrire dans classeur Excel fermé.
    Par botakelymg dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 23/11/2007, 11h52
  5. [ADO VBA] Lire Ecrire dans classeur Excel fermé - Demande de précisions.
    Par botakelymg dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/11/2007, 17h08

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