Avec VB6 comment faire pour prendre les données d'une msflexgrid et d'un
Listview et de les coller dans les cellules d'une nouvelle fenetre d'Excel
sans passer par un fichier.
C'est possible ?
Public Sub Export_Excel(My_Listview As ListView, Nbr_Lignes As Integer, Nbr_Colonnes As Integer)
On Error GoTo errorHandler
Dim oExcel As Object Dim Ligne As String Dim LigneExcel As Integer Dim ColExcel As Integer Dim compt As Integer Dim comptcol As Integer
Set oExcel = CreateObject("Excel.Application")
'Créer un nouveau classeur EXCEL initialisé à la ligne 1 oExcel.Workbooks.Add.Activate DoEvents LigneExcel = 1: ColExcel = 1
' Affecter les données de la listbox dans les cellules de la feuille With oExcel.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
errorHandler: If Err.Number = 429 Then MsgBox "Une erreur est survenue lors de la tentative d'ouverture d'Excel." _ & vbCrLf & vbCrLf & "Microsoft Excel n'est peut-être pas installé sur votre machine.", vbCritical Else Resume Next End If
End Sub
-- __________________________________ Tchao.net: L'informatique à votre dimension www.tchao.net Pour toute réponse, retirer le .nospam de l'adresse mail ou cliquez ici http://cerbermail.com/?6nQ9U2fpkD
"Jonathan" a écrit dans le message de news:3fc4b159$0$28639$
Avec VB6 comment faire pour prendre les données d'une msflexgrid et d'un Listview et de les coller dans les cellules d'une nouvelle fenetre d'Excel sans passer par un fichier. C'est possible ?
@+
Jonathan
Salut ;O)
Je peux déjà t'aider pour le Listview, mais pour le FlexGrid....
Public Sub Export_Excel(My_Listview As ListView, Nbr_Lignes As Integer,
Nbr_Colonnes As Integer)
On Error GoTo errorHandler
Dim oExcel As Object
Dim Ligne As String
Dim LigneExcel As Integer
Dim ColExcel As Integer
Dim compt As Integer
Dim comptcol As Integer
Set oExcel = CreateObject("Excel.Application")
'Créer un nouveau classeur EXCEL initialisé à la ligne 1
oExcel.Workbooks.Add.Activate
DoEvents
LigneExcel = 1: ColExcel = 1
' Affecter les données de la listbox dans les cellules de la feuille
With oExcel.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
errorHandler:
If Err.Number = 429 Then
MsgBox "Une erreur est survenue lors de la tentative d'ouverture
d'Excel." _
& vbCrLf & vbCrLf & "Microsoft Excel n'est peut-être pas installé
sur votre machine.", vbCritical
Else
Resume Next
End If
End Sub
--
__________________________________
Tchao.net: L'informatique à votre dimension
www.tchao.net
Pour toute réponse, retirer le .nospam de l'adresse mail
ou cliquez ici http://cerbermail.com/?6nQ9U2fpkD
"Jonathan" <SANSSPAMSVPduprejonathan@yahoo.fr> a écrit dans le message de
news:3fc4b159$0$28639$636a55ce@news.free.fr...
Avec VB6 comment faire pour prendre les données d'une msflexgrid et d'un
Listview et de les coller dans les cellules d'une nouvelle fenetre d'Excel
sans passer par un fichier.
C'est possible ?
Public Sub Export_Excel(My_Listview As ListView, Nbr_Lignes As Integer, Nbr_Colonnes As Integer)
On Error GoTo errorHandler
Dim oExcel As Object Dim Ligne As String Dim LigneExcel As Integer Dim ColExcel As Integer Dim compt As Integer Dim comptcol As Integer
Set oExcel = CreateObject("Excel.Application")
'Créer un nouveau classeur EXCEL initialisé à la ligne 1 oExcel.Workbooks.Add.Activate DoEvents LigneExcel = 1: ColExcel = 1
' Affecter les données de la listbox dans les cellules de la feuille With oExcel.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
errorHandler: If Err.Number = 429 Then MsgBox "Une erreur est survenue lors de la tentative d'ouverture d'Excel." _ & vbCrLf & vbCrLf & "Microsoft Excel n'est peut-être pas installé sur votre machine.", vbCritical Else Resume Next End If
End Sub
-- __________________________________ Tchao.net: L'informatique à votre dimension www.tchao.net Pour toute réponse, retirer le .nospam de l'adresse mail ou cliquez ici http://cerbermail.com/?6nQ9U2fpkD
"Jonathan" a écrit dans le message de news:3fc4b159$0$28639$
Avec VB6 comment faire pour prendre les données d'une msflexgrid et d'un Listview et de les coller dans les cellules d'une nouvelle fenetre d'Excel sans passer par un fichier. C'est possible ?