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.NET Discussion :

Export excel selon date


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club Avatar de paradize99
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2019
    Messages : 60
    Points : 29
    Points
    29
    Par défaut Export excel selon date
    Bonjour à tous,

    J'ai un dgv rempli depuis une table dans ma database et j'aimerais exporter les données sous excel en fonction de 2 dates sélectionnées dans 2 datetimepicker.
    Pour être plus clair, dans le dtp1 j'ai la date minimun et dans le dtp2 la maximun. Ces 2 dates doivent filtrer la colonne RequistionDate.

    J'arrive à exporter dans excel mais en fonction des dates.
    Voici mon code pour exporter:

    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
        Private Sub BtnExport_Click(sender As Object, e As EventArgs) Handles btnExport.Click
            Dim xlApp As Microsoft.Office.Interop.Excel.Application
            Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook
            Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet
            Dim misValue As Object = System.Reflection.Missing.Value
            Dim i As Integer
            Dim j As Integer
     
            xlApp = New Microsoft.Office.Interop.Excel.Application
            xlWorkBook = xlApp.Workbooks.Add(misValue)
            xlWorkSheet = xlWorkBook.Sheets("sheet1")
     
            For i = 0 To DataGridView1.RowCount - 2
                For j = 0 To DataGridView1.ColumnCount - 1
                    xlWorkSheet.Cells(i + 1, j + 1) =
                        DataGridView1(j, i).Value.ToString()
                Next
            Next
     
            If My.Computer.FileSystem.FileExists("C:\ITDEV\Excel export\Schedule SheetTool\MyReport" & Format(Today, "MMddyyyy") & ".xlsx") Then
     
                My.Computer.FileSystem.DeleteFile("C:\ITDEV\Excel export\Schedule SheetTool\MyReport" & Format(Today, "MMddyyyy") & ".xlsx")
     
                Dim Report As String
                Report = "MyReport" & Format(Today, "MM/dd/yyyy") & ".xlsx"
     
                xlWorkSheet.SaveAs("C:\ITDEV\Excel export\Schedule SheetTool\MyReport" & Format(Today, "MMddyyyy") & ".xlsx")
                xlWorkBook.Close()
                xlApp.Quit()
     
                ReleaseObject(xlApp)
                ReleaseObject(xlWorkBook)
                ReleaseObject(xlWorkSheet)
     
                Process.Start("C:\ITDEV\Excel export\Schedule SheetTool\MyReport" & Format(Today, "MMddyyyy") & ".xlsx")
     
            Else
                Dim Report As String
                Report = "MyReport" & Format(Today, "MM/dd/yyyy") & ".xlsx"
     
                xlWorkSheet.SaveAs("C:\ITDEV\Excel export\Schedule SheetTool\MyReport" & Format(Today, "MMddyyyy") & ".xlsx")
                xlWorkBook.Close()
                xlApp.Quit()
     
                ReleaseObject(xlApp)
                ReleaseObject(xlWorkBook)
                ReleaseObject(xlWorkSheet)
     
                Process.Start("C:\ITDEV\Excel export\Schedule SheetTool\MyReport" & Format(Today, "MMddyyyy") & ".xlsx")
     
            End If
     
        End Sub
    Merci d'avance pour vos réponses

  2. #2
    Membre émérite Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Points : 2 865
    Points
    2 865
    Par défaut
    Bonsoir,

    Les comparaisons de dates ne sont valables que si ces dates sont au format YYYY/MM/DD.
    Il te faut donc convertir dtp1 et dtp2 dans ce format et comparer avec ta RequistionDate également convertie dans ce format.

    La fonction suivante convertit la date DD/MM/YYYY en YYYY/MM/DD :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        Private Function PrepareDate(Dte As String) As String
            Dim MM As String
            Dim DD As String
            Dim YYYY As String
            Dim Sep As Integer
            Sep = Dte.IndexOf("/")
            DD = String.Format("{0:00}", CType(Dte.Substring(0, Sep), Integer))
            MM = String.Format("{0:00}", CType(Dte.Substring(Sep + 1, Dte.LastIndexOf("/") - Sep - 1), Integer))
            YYYY = Dte.Substring(Fecha.LastIndexOf("/") + 1, 4)
            Return YYYY & "/" & MM & "/" & DD
        End Function

    Avec cette fonction, ton code pourrait devenir :

    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
            DateDeb = PrepareDate(DateTimePicker1.Value.ToString("dd/MM/yyyy"))
            DateFin = PrepareDate(DateTimePicker2.Value.ToString("dd/MM/yyyy"))
     
    ‘ C doit être l’indice de la colonne de ReceptionDtae
     
    For i = 0 To DataGridView1.RowCount – 2
     
    DateReception = PrepareDate(DataGridView1.Item(C, i).Value.ToString)
     
    	If DateReception >= DateDeb AND DateReception <= DateFin Then
     
                For j = 0 To DataGridView1.ColumnCount - 1
                    xlWorkSheet.Cells(i + 1, j + 1) =
                        DataGridView1.Item(j, i).Value.ToString()
                Next
     
    	End If
    Next
    Bon travail,

  3. #3
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    Bonjour,

    Citation Envoyé par Phil Rob Voir le message
    Les comparaisons de dates ne sont valables que si ces dates sont au format YYYY/MM/DD.
    Je ne suis pas d'accord du tout. Le format date fonctionne très bien pour faire des comparaisons.
    Si la date de réception est bien de type date dans le DataGridView il n'y a aucun soucis à faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If DataGridView1.Item(C, i).Value >= DateTimePicker1.Value.Date AND DataGridView1.Item(C, i).Value <= DateTimePicker2.Value.Date Then
    Sinon pour rester avec le code que tu proposes, il faut éviter le travail inutile. Ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            DateDeb = PrepareDate(DateTimePicker1.Value.ToString("dd/MM/yyyy"))
            DateFin = PrepareDate(DateTimePicker2.Value.ToString("dd/MM/yyyy"))
    Peut juste être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            DateDeb = DateTimePicker1.Value.ToString("yyyy/MM/dd")
            DateFin = DateTimePicker2.Value.ToString("yyyy/MM/dd")
    Le format étant dans le .ToString

    L'idéal restant de mettre dans le dataGridView au format date et de comparer des dates, beaucoup plus propre et logique.

  4. #4
    Nouveau membre du Club Avatar de paradize99
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2019
    Messages : 60
    Points : 29
    Points
    29
    Par défaut
    Merci pour vos réponses

    Sankasssss j'avais essayé d'utiliser la condition If pour les dates mais j'ai l'erreur
    System.InvalidCastException: 'Operator '>=' is not defined for type 'Integer' and type 'Date'.'
    Voici le code que j'ai pour l'instant avec l'erreur
    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    Private Sub btnExport_Click(sender As Object, e As EventArgs) Handles btnExport.Click
     
            Dim xlApp As Microsoft.Office.Interop.Excel.Application
            Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook
            Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet
            Dim misValue As Object = System.Reflection.Missing.Value
            Dim i As Integer
            Dim j As Integer
     
            xlApp = New Microsoft.Office.Interop.Excel.Application
            xlWorkBook = xlApp.Workbooks.Add(misValue)
            xlWorkSheet = xlWorkBook.Sheets("sheet1")
     
            DataGridView3.Columns(0).DefaultCellStyle.Format = "MMddyyyy"
     
            Dim MyTable As New DataTable
            Dim CNX As New OleDbDataAdapter("select * from tblToolRequisition", cn)
            CNX.FillSchema(MyTable, SchemaType.Source)
            CNX.Fill(MyTable)
     
            For i = 0 To DataGridView3.RowCount - 2
                For Each R As DataRow In MyTable.Rows
                    If Not R.Item("RequiredBy") Is DBNull.Value Then
                        If DataGridView3.Item(0, i).Value >= dtpStart.Value.Date And DataGridView3.Item(0, i).Value <= dtpEnd.Value.Date Then
                            For j = 0 To DataGridView3.ColumnCount - 1
     
                                xlWorkSheet.Cells(i + 1, j + 1) = DataGridView3(j, i).Value.ToString()
     
                                If My.Computer.FileSystem.DirectoryExists("C:\ITDEV\Excel export\ToolRequisition") Then
                                Else
                                    My.Computer.FileSystem.CreateDirectory("C:\ITDEV\Excel export\ToolRequisition")
                                End If
     
                                If My.Computer.FileSystem.FileExists("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx") Then
     
                                    My.Computer.FileSystem.DeleteFile("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
     
                                    Dim Report As String
                                    Report = "MyReport" & Format(Today, "MM/dd/yyyy") & ".xlsx"
     
                                    xlWorkSheet.SaveAs("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
                                    xlWorkBook.Close()
                                    xlApp.Quit()
     
                                    ReleaseObject(xlApp)
                                    ReleaseObject(xlWorkBook)
                                    ReleaseObject(xlWorkSheet)
     
                                    Process.Start("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
     
                                Else
                                    Dim Report As String
                                    Report = "MyReport" & Format(Today, "MM/dd/yyyy") & ".xlsx"
     
                                    xlWorkSheet.SaveAs("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
                                    xlWorkBook.Close()
                                    xlApp.Quit()
     
                                    ReleaseObject(xlApp)
                                    ReleaseObject(xlWorkBook)
                                    ReleaseObject(xlWorkSheet)
     
                                    Process.Start("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
     
                                End If
                            Next
                        End If
                    End If
                Next
            Next
    End Sub

  5. #5
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    J'ai l'impression que vous avez stocké vos valeurs dates en Integer lors de l'initialisation du DataGridView.
    Surtout quand je vois cette ligne que je ne comprends pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     DataGridView3.Columns(0).DefaultCellStyle.Format = "MMddyyyy"
    Est-ce que l'on peut voir le code d'initialisation ?

  6. #6
    Nouveau membre du Club Avatar de paradize99
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2019
    Messages : 60
    Points : 29
    Points
    29
    Par défaut
    Mon dgv est remplit directement avec ma database

    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
     Private Sub QuoteCosting_Load(sender As Object, e As EventArgs) Handles MyBase.Load
     
            Me.TblToolRequisitionTableAdapter.Fill(Me.ToolDatabaseVB_beDataSet.tblToolRequisition)
     
            connexion = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\ITDEV\Project\Tool_Process\Tool_Process\ToolDatabaseVB_be.accdb"
            cn = New OleDbConnection(connexion)
     
            Dim DtSet As New DataSet()
            Dim UneTable As New DataTable
     
            Dim cn As New OleDbDataAdapter("Select ReqDate, RequistionNum, Priority, UCASE(CustomerName) as CustomerName, PN, PartRev, ToolDRG, ToolRev, Description, Quantity, DueDate, RequiredBy, StatusID, DeptName,Operation, ToolNotes, ASSYID from tblToolRequisition order by ReqDate DESC", cn)
     
            cn.Fill(UneTable)
            DtSet.Tables.Add(UneTable)
            DtSet.Tables(0).TableName = "tblToolRequisition"
            DataGridView3.DataSource = DtSet.Tables("tblToolRequisition")
     
            dtpStart.Value = Today
            dtpEnd.Value = DateTime.Today.AddMonths(1)
     
        End Sub

  7. #7
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Puisque tu as une DataTable, tu peux utiliser un DataView (plus simple et plus léger) ou une BindingSource (plus complet et plus complexe) pour filtrer la table directement. Et tu peux mettre le DataView ou la BindingSource comme source de données du DGV.

    Pour Filtrer ton DataView tu renseignes la propriété RowFilter
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  8. #8
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    +1 pour clementmarcotte

    Il faudrait aussi voir quel est le type de la colonne ReqDate en base de donnée?

  9. #9
    Nouveau membre du Club Avatar de paradize99
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2019
    Messages : 60
    Points : 29
    Points
    29
    Par défaut
    Merci pour votre aide a tous

    J'ai trouvé une solution en créant un dgv avec ma condition
    Voici mon code au cas où ça aiderait qq

    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
    59
    60
    61
    62
    63
    64
    Private Sub BtnExport_Click(sender As Object, e As EventArgs) Handles btnExport.Click
     
            Dim xlApp As Microsoft.Office.Interop.Excel.Application
            Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook
            Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet
            Dim misValue As Object = System.Reflection.Missing.Value
            Dim i As Integer
            Dim j As Integer
     
            DGV.Visible = True
     
            xlApp = New Microsoft.Office.Interop.Excel.Application
            xlWorkBook = xlApp.Workbooks.Add(misValue)
            xlWorkSheet = xlWorkBook.Sheets("sheet1")
     
            DGV.Columns(0).DefaultCellStyle.Format = "MM/dd/yyyy"
     
            Dim MyTable As New DataTable
            Dim DtSet As New DataSet
            Dim cmd As New OleDbDataAdapter("select * from tblToolRequisition where [RequiredBy] between #" & dtpStart.Value.Date & "# and #" & dtpEnd.Value.Date & "#", cn)
            cmd.Fill(MyTable)
            DtSet.Tables.Add(MyTable)
     
            DtSet.Tables(0).TableName = "tblToolRequisition"
            DGV.DataSource = DtSet.Tables("tblToolRequisition")
     
            For i = 0 To DGV.RowCount - 2
                For j = 0 To DGV.ColumnCount - 1
                    xlWorkSheet.Cells(i + 1, j + 1) = DGV(j, i).Value.ToString()
                Next
            Next
     
            If My.Computer.FileSystem.DirectoryExists("C:\ITDEV\Excel export\ToolRequisition") Then
            Else
                My.Computer.FileSystem.CreateDirectory("C:\ITDEV\Excel export\ToolRequisition")
            End If
     
            If My.Computer.FileSystem.FileExists("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx") Then
     
                My.Computer.FileSystem.DeleteFile("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
     
                xlWorkSheet.SaveAs("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
                xlWorkBook.Close()
                xlApp.Quit()
     
                ReleaseObject(xlApp)
                ReleaseObject(xlWorkBook)
                ReleaseObject(xlWorkSheet)
     
                Process.Start("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
     
            Else
                xlWorkSheet.SaveAs("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
                xlWorkBook.Close()
                xlApp.Quit()
     
                ReleaseObject(xlApp)
                ReleaseObject(xlWorkBook)
                ReleaseObject(xlWorkSheet)
     
                Process.Start("C:\ITDEV\Excel export\ToolRequisition\ToolRequisition" & Format(Today, "MMddyyyy") & ".xlsx")
     
            End If
        End Sub

  10. #10
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    Juste pour votre information, ce code fonctionne bien mais vous pouvez travailler directement sur votre datatable et non sur le DataGridView, cela est bien plus performant.

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

Discussions similaires

  1. [XL-2007] Export d'un classeur Excel selon un format CSV
    Par Tonton_glenn dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/11/2009, 14h11
  2. PB de Format de date dans un export Excel
    Par BM42 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 29/11/2006, 14h22
  3. Export Excel et formatage en date (année mois)
    Par joshua12 dans le forum Access
    Réponses: 1
    Dernier message: 20/09/2006, 00h22
  4. Réponses: 8
    Dernier message: 05/05/2006, 16h33
  5. [D6] Export Excel - NumberFormat - date et heure
    Par Lung dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 14/03/2006, 08h10

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