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 :

[VBA-Excel] Macro de mise à jour de Report


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut [VBA-Excel] Macro de mise à jour de Report
    Bonjour à tous,
    En fait j'essaye de faire une macro Excel et comme j'ai un peu de mal je me suis dit que peut être quelqu'un pourrait me venir en aide.

    J'explique la problématique :

    J'ai 50 fichiers Excel mis à jours tous les trimestres.
    Sur chaque fichier Excel j'ai un rapport de 1 à 50 lignes sur 20 colonnes
    Je voudrais copier tous ces rapports sur un fichier récapitulatif.

    En fait ce que je ne veux pas, c'est avoir les noms des fichiers dans la macro mais que la macro cherche tout seul dans le dossier, les fichiers Excel présent et les ouvrir et faire le copier coller sur le récapitulatif.

    J’ai déjà réalisé la macro qui copie colle sur le fichier récapitulatif (mais que d'un seul fichier et j'ai pas envi de répéter la même macro 50 fois, car le jour ou un nouveau fichier apparaîtra il faudra retourner dans la macro)

    Voici le code pour le "copié collé" :

    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
    Sub Recup_Auto_contenu()
     
    Workbooks.Open Filename:= _
    "C:\Documents and Settings\bidule\Bureau\Classeur2.xls" 
     
     
    Sheets("Export").Select
                  Range("A1").Select
                  Selection.CurrentRegion.Select
                  Selection.Copy
     
                  Windows("salut.xls").Activate
     
               Dim i As Integer
               For i = 2 To 200
     
     
                If Range("A" & i).Value = Range("A65000").Value Then Range("A" & i).Select: ActiveSheet.Paste: Exit For
               Next i
     
    End Sub
    A la place de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Workbooks.Open Filename:= _
    "C:\Documents and Settings\bidule\Bureau\Classeur2.xls"
    J’aimerais bien lancer une autre macro qui ouvre un autre fichier une sorte de boucle qui ferais tour à tour tous les fichiers du dossier


    Enfin une dernière question :
    Est il possible de faire dans la boucle, de rajouter une fonction qui permettrais de copier le nom du fichier ?
    En fait chaque fichier est nommé d’une façon précise.
    Style: 3premiere lettre du nom puis un code de 3 chiffres.

    Si vous voulez savoir dans quel cadre je m’occupe de ceci, c’est dans le cadre d’un petit stage.
    Dans mon école on n’a pas suivi de cours de VBA donc j’essaye de faire ce que je peux.

    Merci D’avance de vôtre aide.
    Bonne journée

  2. #2
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 484
    Points : 870
    Points
    870
    Par défaut
    voilà un début de réponse peut-être : en utilisant un object FileSystemObject, tu peux lister le contenu d'un dossier et effectuer des traitement sur chacun des fichiers du dossier.

    Exemple :

    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
    Sub mOpenFiles()
     
        Dim oFSO As Object
        Dim oFiles As Object
        Dim oFolders As Object
        Dim sFolder As String
     
        sFolder = "C:\chemin_du_repertoire"
        Set oFSO = CreateObject("Scripting.FileSystemObject")
        Set oFolders = oFSO.GetFolder(sFolder)
        Set oFiles = oFolders.Files
        For Each fichier In oFiles
            'tes manipulations sur les fichiers
        Next
        Set oFiles = Nothing
        Set oFolders = Nothing
        Set oFSO = Nothing
     
    End Sub
    Bon dev...
    laloune
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    Super efficace et rapide.
    Je vais commencer par regarder ça tout de suite.
    Si d'autres personnes ont des idées je suis preneur

  4. #4
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 484
    Points : 870
    Points
    870
    Par défaut
    Citation Envoyé par strifer
    Enfin une dernière question :
    Est il possible de faire dans la boucle, de rajouter une fonction qui permettrais de copier le nom du fichier ?
    En fait chaque fichier est nommé d’une façon précise.
    Style: 3premiere lettre du nom puis un code de 3 chiffres.
    je ne comprends pas le "rajouter une fonction qui permettrait de copier le nom du fichier". Le copier d'où ? et le coller où (si je présume bien)

    laloune
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

  5. #5
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    En fait, copier le nom du fichier vers un tableau excel grâce à une fonction qui pourrais faire la manip du click droit renomer (sous windows) puis copier et hop direction tableau excel et hop collé.
    Mon maitre de stage veut que la macro reconnaisse tout seul le nom de l'entreprise et le marché vu que ces informations sont présentes sur le nom.
    Mais bon ça c'est un reve de maitre de stage.
    Pour le moment je vais me charger de l'exploration des dossiers.

    Merci beaucoup.

  6. #6
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 484
    Points : 870
    Points
    870
    Par défaut
    Citation Envoyé par strifer
    En fait, copier le nom du fichier vers un tableau excel grâce à une fonction qui pourrais faire la manip du click droit renomer (sous windows) puis copier et hop direction tableau excel et hop collé.
    ca doit être mon manque de sommeil, mais je ne vois pas le rapport entre copier le nom du fichier et le click droit > renommer...

    voilà le process tel que je le comprends :

    - tu copies le nom du fichier excel source et tu le colles dans un autre fichier excel
    - tu renommes ton fichier excel source
    - tu ouvres ton fichier excel source
    - tu copies les cellules de ton fichier excel source pour les coller dans un autre fichier excel

    ca doit pas être ca (ca ne me parait pas très logique
    laloune
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

  7. #7
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    En gros :
    J'ai 50 fichiers Excel de petit rapport et disons que j'ai un fichier qui s'appelle "tru002.xls"
    Je récupère ce nom et je le copie dans une cellule d'un fichier excel.
    Et je fais la même chose pour tous les fichiers présents dans le dossier.
    Puis je traite le fichier Excel contenant tous les nom, de façon à séparer le tru du 002. (Dans deux cellules différentes)
    Puis faire comprendre que tru c'est l'entreprise "truc" et que le 002 veut dire qu’ils sont dans le marché "machin chose"
    Tu vois un peu mieux ?

    Au passage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    For j = 2 To 20000
                  Sheets("Récap").Select
                  Range("A1").Select
                  If Range("B" & j).Value = Range("X65000").Value Then Range("A2:I" & j).Select: Selection.Copy: Exit For
                  Windows("salut.xls").Activate
               Next j
    J’aimerais bien savoir si :
    Est correct.
    Je voulais simplement faire une sélection : de A2 à Ij (j étant normalement, la cellule ou il n'y a plus rien)

    EDIT :
    Et autre chose :

    Dans le oFiles, il y a 30 item et dans chaque item le nom est disponible
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each fichier In oFiles
    Il faudrait mettre quoi pour qu'il fasse ouvrir le fichier du premier item puis la macro de copie-colle
    puis ouvrir le fichier du deuxieme item etc ....

    merci encore

  8. #8
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 484
    Points : 870
    Points
    870
    Par défaut
    Citation Envoyé par strifer
    Est correct.
    ma foi oui

    Citation Envoyé par strifer
    Dans le oFiles, il y a 30 item et dans chaque item le nom est disponible

    Il faudrait mettre quoi pour qu'il fasse ouvrir le fichier du premier item puis la macro de copie-colle
    puis ouvrir le fichier du deuxieme item etc ....
    dynamise simplement la chaine chemin & nom du fichier à ouvrir, du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    For each fichier in oFiles
    Workbooks.Open Filename:= fichier.Path
    'après tu peux faire tes manips sur les fichiers
    Next
    au passage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Range("A2:I" & j).Select
    Selection.Copy
    est pareil que :

    sauf que l'un prend 2 lignes et l'autre 1 seule

    Bon dev...
    laloune
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

  9. #9
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    Voilà ca marche plus ou moins
    Derniere question :
    Existe il une fonction worbooks.Close Filename := fichier.path ?
    car 50 fichier qui s'ouvre ca fait mal
    Merci beaucoup.

  10. #10
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Existe il une fonction worbooks.Close Filename := fichier.path
    Non mais tu peux faire ça de différentes façons, tout dépend de ce que tu veux faire ? Alors que veux-tu faire ? Veux-tu les enregistrer ou nom ?
    Pourquoi les ouvres-tu ? Si ce n'est que pour avoir la liste des noms, tu n'es pas obligé de les ouvrir (?)
    A toi

    NB - Et change ton titre !

  11. #11
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 484
    Points : 870
    Points
    870
    Par défaut
    Citation Envoyé par strifer
    Existe il une fonction worbooks.Close Filename := fichier.path ?
    comme l'a dit Ouskel'n'or, non.

    mais ActiveWorkbook dispose de la méthode .Close, qui comme son nom l'indique ferme le fichier.

    Mais comme l'a dit Ouskel'n'or, il est vrai que l'on manque un peu d'informations...
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

  12. #12
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    ouskel'n'or: Pour le titre je vais le changer, quand j'ai posté la réponse de toute à l'heure je n'avais pas vu ton message.

    Pour les indications :
    J'ouvre le fichier et je recupere un tableau que je copi dans un autre fichier.
    C'est tout pour l'instant.
    Donc la macro :
    Ouvre un fichier ==> copie tableau ==> colle sur report Final
    Ouvre un fichier ==> copie tableau ==> colle sur report Final (a la suite)
    Ouvre un fichier ==> copie tableau ==> colle sur report Final (a la suite)

    Malheureusement tous ces fichiers restent ouvert et quand il y a 50 à 100 fichiers à traiter, le pc a mal.
    Je me fait mieux comprendre ?

  13. #13
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    J'ouvre le fichier et je recupere un tableau que je copi dans un autre fichier.
    C'est tout pour l'instant.
    Donc la macro :
    Ouvre un fichier ==> copie tableau ==> colle sur report Final
    Ouvre un fichier ==> copie tableau ==> colle sur report Final (a la suite)
    Ouvre un fichier ==> copie tableau ==> colle sur report Final (a la suite)
    Et donc, tu ne modifies rien dans aucun des fichiers ouverts. Alors ferme-les au fur et à mesure après le "collage"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ActiveWorkbook.close false
    'ou
    Workbooks(NomDuFichierOuvert).close false
    DoEvents
    Le DoEvents est nécessaire si tu ouvres aussi tôt le fichier suivant

    Montre ton code qu'on arrange ça

  14. #14
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    Ok merci beaucoup :


    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
    Sub Liste_dossier()
     
        Dim oFSO As Object
        Dim oFiles As Object
        Dim oFolders As Object
        Dim sFolder As String
     
        sFolder = "Adresse du repertoire"
        Set oFSO = CreateObject("Scripting.FileSystemObject")
        Set oFolders = oFSO.GetFolder(sFolder)
        Set oFiles = oFolders.Files
        For Each fichier In oFiles
     
            Workbooks.Open Filename:=fichier.Path
            Sheets("Récap").Select
               Dim j As Integer
               For j = 2 To 20000
                  If Range("B" & j).Value = Range("X65000").Value Then Range("A2:I" & j - 1).Copy: Exit For
               Next j
     
               Dim i As Integer
               For i = 2 To 20000
                    Windows("salut.xls").Activate
                    Sheets("Feuil1").Select
     
                    If Range("B" & i).Value = Range("X65000").Value Then Range("A" & i) _
                        .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                        :=False, Transpose:=False: Exit For       
               Next i
        Next
        Set oFiles = Nothing
        Set oFolders = Nothing
        Set oFSO = Nothing
     
        Rows("1:1").Select
        Selection.Interior.ColorIndex = 36
        Selection.AutoFilter
        With Selection
            .VerticalAlignment = xlTop
            .Orientation = 0
            .AddIndent = False
            .ShrinkToFit = False
            .ReadingOrder = xlContext
            .MergeCells = False
        End With
        Columns("A:A").ColumnWidth = 11.29
        Columns("B:B").ColumnWidth = 21.86
        Columns("C:C").ColumnWidth = 12.14
        Columns("D: D").ColumnWidth = 66
        Columns("E:E").ColumnWidth = 10.86
        Columns("F:F").ColumnWidth = 11.29
        Columns("H:H").ColumnWidth = 11.14
        Columns("I:I").ColumnWidth = 11.14
        Columns("J:J").ColumnWidth = 10.86
     
    End Sub
    Pour les balises Code, ce n'est pas la feuille, c'est #
    Balises modifiées par ouskel'n'or

  15. #15
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
                    If Range("B" & i).Value = Range("X65000").Value Then Range("A" & i) _
                        .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                        :=False, Transpose:=False: Exit For       
               Next i
               Workbooks(fichier.Path).close false
        Next
    Je n'ai laissé que les dernière lignes.
    Ceci dit, je n'ai pas accès à GetFolder en VBA97, et il est possible que tu puisses mettre "Workbooks(fichier).close false" au lieu de fichier.Path.
    Tu testes

    A+

  16. #16
    Membre éclairé Avatar de laloune
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2005
    Messages
    484
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2005
    Messages : 484
    Points : 870
    Points
    870
    Par défaut
    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
    For Each fichier In oFiles
     
            Workbooks.Open Filename:=fichier.Path
            Sheets("Récap").Select
               Dim j As Integer
               For j = 2 To 20000
                  If Range("B" & j).Value = Range("X65000").Value Then Range("A2:I" & j - 1).Copy: Exit For
               Next j
     
               Dim i As Integer
               For i = 2 To 20000
                    Windows("salut.xls").Activate
                    Sheets("Feuil1").Select
     
                    If Range("B" & i).Value = Range("X65000").Value Then Range("A" & i) _
                        .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                        :=False, Transpose:=False: Exit For       
               Next i
               'Fermeture du fichier
               Workbooks(fichier.name) False
               DoEvents '(que d'ailleurs je connaissais pas ;))
    Next
    Cette méthode a l'avantage si je ne m'abuse (Ouskel'n'or nous le confirmera certainement) de ne pas avoir à re-selectionner ton fichier source...

    laloune
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

  17. #17
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    Je re-test ça plus tard.
    Merci beaucoup, vous êtes vraiment éfficace

  18. #18
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    erreur de compliation pour les deux, ça viendrait de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    workbooks(fichier.name) False

  19. #19
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Pas
    workbooks(fichier.name) False
    mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    workbooks(fichier.name).close False

  20. #20
    Membre à l'essai
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Points : 15
    Points
    15
    Par défaut
    Merci ca marche nickel.
    Derniere chose comme on vide le presse papier en VBA ?
    Merci encore

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Mise à jour Crystal Report
    Par cgo dans le forum Bases de données
    Réponses: 3
    Dernier message: 31/10/2018, 17h18
  2. Réponses: 4
    Dernier message: 05/05/2015, 17h22
  3. Macro de mise à jours d'un fichier excel
    Par jumpers70 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/02/2012, 15h41
  4. [VBA-EXcel] Timer pour mise jour automatique
    Par Dos dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 12/09/2006, 21h36
  5. [VBA Excel]. Pb de mise à jour de UserForm (checkBox)
    Par ExecelMans dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/08/2006, 12h06

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