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 :

Comment optimiser ce code ?


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Août 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage

    Informations forums :
    Inscription : Août 2020
    Messages : 8
    Par défaut Comment optimiser ce code ?
    Bonjour,

    Je souhaiterai optimiser le temps de fonctionnement de cette macro comment puis je le faire ?

    En sachant que dans ma logique, je vais chercher des feuilles dans d'autres classeurs, je les renomme, et ensuite je vais chercher des données afin de recopier les lignes qui contiennent ces données dans une autre feuille.

    Merci au forumeurs qui voudront bien m'aider s'il vous plait.

    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
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    Sub CopierFeuilleDuClasseurFermé()
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    'USFWait.Show 0
      'USFWait.Repaint
     
    Call efface
     
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire ANZIN 1.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE ANZIN 1"
    Columns("D:D").Delete Shift:=xlToLeft
    ''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire ANZIN 2.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE ANZIN 2"
    '''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire CONDE 1.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE CONDE 1"
    Range("A1").EntireColumn.Insert
    Range("A1").EntireColumn.Insert
    ''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire CONDE 2.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE CONDE 2"
    Range("A1").EntireColumn.Insert
    Range("A1").EntireColumn.Insert
    '''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire VALENCIENNES 1.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE VALENCIENNES 1"
    Columns("E:E").Delete Shift:=xlToLeft
    ''''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire VALENCIENNES 2.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE VALENCIENNES 2"
    Columns("C:C").Delete Shift:=xlToLeft
    '''''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire ONNAING.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE ONNAING"
    ''''''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire ST AMAND.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE ST AMAND"
    '''''''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire DENAIN BOUCHAIN 1.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE DENAIN BOUCHAIN 1"
    ''''''''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire DENAIN BOUCHAIN 2.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE DENAIN BOUCHAIN 2"
    '''''''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire DENAIN LOURCHES 1.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE DENAIN LOURCHES 1"
    ''''''''''
    Set classeurFermé = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire DENAIN LOURCHES 2.xlsx", 0, True)
        classeurFermé.Sheets("ASE").Copy Before:=ThisWorkbook.Sheets(1)
        classeurFermé.Close SaveChanges:=False
    ActiveSheet.Name = "ASE DENAIN LOURCHES 2"
     
    Call CopyRows_Garde
     
    Sheets("LISTE").Activate
    Range("A:D,K:N,P:P,V:W,AC:AG,AJ:AN,BC:BD").Select
    Range("BD1").Activate
    Selection.Delete Shift:=xlToLeft
     
    Sheets("LISTE").Activate
    Range("A2:BD3000").Copy Worksheets("ASE").Range("A2")
     
    Sheets("ASE").Activate
    With Range("A2:BD3000")
        .HorizontalAlignment = xlHAlignCenter
        .VerticalAlignment = xlVAlignCenter
    Call aa2
    End With
     
    Call retirer
     
    Sheets("LANCEMENT").Select
     
    'Unload USFWait
     
     
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
     
    End Sub
    Sub retirer()
        Dim ws As Worksheet
        For Each ws In Worksheets
        'Application.DisplayAlerts = False
            If ws.Name <> "ASE" And ws.Name <> "LANCEMENT" And ws.Name <> "AEMO, AEMO+TDC, AEMO-R" Then ws.Delete
        Next
        'Application.DisplayAlerts = True
    End Sub
     
    Public Sub CopyRows_Garde()
    Dim xWs As Worksheet
    Dim xCWs As Worksheet
    Dim xRg As Range
    Dim xStrName As String
    Dim xRStr As String
    Dim xAStr As String
    Dim xPStr As String
    Dim xRRg As Range
    Dim xC As Integer
    On Error Resume Next
    'Application.DisplayAlerts = False
    xStr = "LISTE"
    xJtr = "LISTE AEMO"
    xBtr = "AEMO, AEMO+TDC, AEMO-R"
    xCtr = "LISTE ASE"
    xRStr = "GARDE"
    xAStr = "AP"
    xPStr = "Pupille"
    xMStr = "AP Mère/Enfant"
    xDStr = "DAP"
    xTStr = "Tutelle"
    xCStr = ""
    Set xCWs = ActiveWorkbook.Worksheets.Item(xStr)
    If Not xCWs Is Nothing Then
        xCWs.Delete
    End If
    Set xCWs = ActiveWorkbook.Worksheets.Add
    xCWs.Name = xStr
    xC = 1
    For Each xWs In ActiveWorkbook.Worksheets
        If xWs.Name <> "xStr" And xWs.Name <> "xJtr" And xWs.Name <> "xBtr" And xWs.Name <> "xCtr" Then
            Set xRg = xWs.Range("S:S")
            Set xRg = Intersect(xRg, xWs.UsedRange)
            For Each xRRg In xRg
                If xRRg.Value = xRStr Then
                   xRRg.EntireRow.Copy
                   xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
                   xC = xC + 1
                End If
            Next xRRg
        End If
    Next xWs
    For Each xWs In ActiveWorkbook.Worksheets
        If xWs.Name <> "xStr" And xWs.Name <> "xJtr" And xWs.Name <> "xBtr" And xWs.Name <> "xCtr" Then
            Set xRg = xWs.Range("S:S")
            Set xRg = Intersect(xRg, xWs.UsedRange)
            For Each xRRg In xRg
                If xRRg.Value = xAStr Then
                   xRRg.EntireRow.Copy
                   xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
                   xC = xC + 1
                End If
            Next xRRg
        End If
    Next xWs
    For Each xWs In ActiveWorkbook.Worksheets
        If xWs.Name <> "xStr" And xWs.Name <> "xJtr" And xWs.Name <> "xBtr" And xWs.Name <> "xCtr" Then
            Set xRg = xWs.Range("S:S")
            Set xRg = Intersect(xRg, xWs.UsedRange)
            For Each xRRg In xRg
                If xRRg.Value = xPStr Then
                   xRRg.EntireRow.Copy
                   xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
                   xC = xC + 1
                End If
            Next xRRg
        End If
    Next xWs
    For Each xWs In ActiveWorkbook.Worksheets
        If xWs.Name <> "xStr" And xWs.Name <> "xJtr" And xWs.Name <> "xBtr" And xWs.Name <> "xCtr" Then
            Set xRg = xWs.Range("S:S")
            Set xRg = Intersect(xRg, xWs.UsedRange)
            For Each xRRg In xRg
                If xRRg.Value = xMStr Then
                   xRRg.EntireRow.Copy
                   xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
                   xC = xC + 1
                End If
            Next xRRg
        End If
    Next xWs
    For Each xWs In ActiveWorkbook.Worksheets
        If xWs.Name <> "xStr" And xWs.Name <> "xJtr" And xWs.Name <> "xBtr" And xWs.Name <> "xCtr" Then
            Set xRg = xWs.Range("S:S")
            Set xRg = Intersect(xRg, xWs.UsedRange)
            For Each xRRg In xRg
                If xRRg.Value = xDStr Then
                   xRRg.EntireRow.Copy
                   xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
                   xC = xC + 1
                End If
            Next xRRg
        End If
    Next xWs
    For Each xWs In ActiveWorkbook.Worksheets
        If xWs.Name <> "xStr" And xWs.Name <> "xJtr" And xWs.Name <> "xBtr" And xWs.Name <> "xCtr" Then
            Set xRg = xWs.Range("S:S")
            Set xRg = Intersect(xRg, xWs.UsedRange)
            For Each xRRg In xRg
                If xRRg.Value = xTStr Then
                   xRRg.EntireRow.Copy
                   xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
                   xC = xC + 1
                End If
            Next xRRg
        End If
    Next xWs
    For Each xWs In ActiveWorkbook.Worksheets
        If xWs.Name <> "xStr" And xWs.Name <> "xJtr" And xWs.Name <> "xBtr" And xWs.Name <> "xCtr" Then
            Set xRg = xWs.Range("S:S")
            Set xRg = Intersect(xRg, xWs.UsedRange)
            For Each xRRg In xRg
                If xRRg.Value = xCStr Then
                   xRRg.EntireRow.Copy
                   xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
                   xC = xC + 1
                End If
            Next xRRg
        End If
    Next xWs
    'Application.DisplayAlerts = True
    End Sub
    Sub efface()
    Worksheets("ASE").Range("A2:BZ3000").Clear
    End Sub
    Sub aa2()
    Dim i&
    For i& = 2 To 2000 'ligne 2 à ligne 21
      With Application.WorksheetFunction
       Range("E" & i&) = .RoundDown(.YearFrac(Now, Range("C" & i&)), 0)
      End With
    Next i&
    End Sub

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 418
    Par défaut
    Bonjour,

    A tester (au départ d'une copie de votre fichier):
    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
    Option Explicit
     
    Dim wSh As Worksheet, xC As Long
     
    Sub AddDataWsh(sNom As String, sAdd As String, sDel As String)
        Dim wB As Workbook, xRg As Range, xRRg As Range
        '--- ouvre fichier et ajuste colonnes
        Set wB = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire " & sNom & ".xlsx", 0, True)
        Worksheets("ASE").Select
        If sAdd <> "" Then Range(sAdd).Insert                   '--- insére colonnes
        If sDel <> "" Then Range(sDel).Delete Shift:=xlToLeft   '--- supprime colonnes
        '--- récupère données de la première feuille
        Set xRg = Intersect(Range("S:S"), ActiveSheet.UsedRange)
        If xRg Is Nothing Then
            Stop    '--- anomalie
        Else
            For Each xRRg In xRg
                Select Case xRRg.Value
                    Case "GARDE", "AP", "Pupille", "AP Mère/Enfant", "DAP", "Tutelle", "" '--- n'est ce pas tous les cas possible
                        xRRg.EntireRow.Copy wSh.Cells(xC, 1)
                        xC = xC + 1
                End Select
            Next xRRg
        End If
        '--- referme
        wB.Close SaveChanges:=False
    End Sub
     
    Sub CopierFeuilleDuClasseurFermé()
    '    Application.ScreenUpdating = False
    '    Application.DisplayAlerts = False
     
        Set wSh = ThisWorkbook.Worksheets("ASE")
        wSh.Range("A2:BZ3000").Clear
        xC = 2
     
        AddDataWsh "ANZIN 1", "", "D:D"
        AddDataWsh "ANZIN 2", "", ""
        AddDataWsh "CONDE 1", "A:B", ""
        AddDataWsh "CONDE 2", "A:B", ""
        AddDataWsh "VALENCIENNES 1", "", "E:E"
        AddDataWsh "VALENCIENNES 2", "", "C:C"
        AddDataWsh "ONNAING", "", ""
        AddDataWsh "ST AMAND", "", ""
        AddDataWsh "DENAIN BOUCHAIN 1", "", ""
        AddDataWsh "DENAIN BOUCHAIN 2", "", ""
        AddDataWsh "DENAIN LOURCHES 1", "", ""
        AddDataWsh "DENAIN LOURCHES 2", "", ""
     
        Stop                              '--- à partir d'ici continuer en pas à pas --- lignes 78 et suivantes de votre code
        Sheets("LISTE").Activate
        Range("A:D,K:N,P:P,V:W,AC:AG,AJ:AN,BC:BD").Delete Shift:=xlToLeft
        Range("A2:BD3000").Copy Worksheets("ASE").Range("A2") '<--- vraiment? c'est écraser le travail fait!
     
        Sheets("ASE").Activate
        With Range("A2:BD3000")
            .HorizontalAlignment = xlHAlignCenter
            .VerticalAlignment = xlVAlignCenter
        End With
        Dim i As Long
        With Application.WorksheetFunction
            For i = 2 to 3000
                 Range("E" & i) = .RoundDown(.YearFrac(Now, Range("C" & i)), 0) 
            Next i
        End With
     
        Sheets("LANCEMENT").Select
     
        Application.DisplayAlerts = True
        Application.ScreenUpdating = True
    End Sub
    Erreurs possibles et sans doute nécessaire de supprimer/modifier certains formatages et d'ajouter un tri.

    Cordialement.

  3. #3
    Membre habitué
    Homme Profil pro
    Conseil en assistance à maîtrise d'ouvrage
    Inscrit en
    Août 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Conseil en assistance à maîtrise d'ouvrage

    Informations forums :
    Inscription : Août 2020
    Messages : 8
    Par défaut
    Bonjour EricDgn,
    J'ai compiler ton code et je l'ai exécuté. Probléme il est encore plus long à s'éxécuter que mon précédent code ! Environ 5 mns pour 1mns auparavant ... A quoi est ce dût ?
    Merci de ta patience ...

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut.

    Si tu as XL>= 2010, oriente-toi vers Power Query. Ca me semble indiqué pour ce genre de traitements.

    En VBA (code interprété), il n'y a pas de miracles, avec des boucles comme celles de ton code, ça va forcément être lent.


    Normalement, les données que tu vas rechercher devraient être dans des tableaux structurés, mais quoi qu'il en soit, décider +/- arbitrairement d'aller sur A1:BZ3000 et travailler sur des colonnes entières, c'est un non-sens. Il serait utile de d'abord voir la conception.

    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  5. #5
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 418
    Par défaut
    Bonjour,

    A mon avis cela vient de la boucle qui se trouve des lignes 17 à 24: la copie ligne à ligne prend du temps. Voir si ceci pourrait convenir:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub AddDataWsh(sNom As String, sAdd As String, sDel As String)
        Dim wB As Workbook
        '--- ouvre fichier et ajuste colonnes
        Set wB = Workbooks.Open("C:\Users\salva\OneDrive\Bureau\Isa\Tableau gestionnaire " & sNom & ".xlsx", 0, True)
        Worksheets("ASE").Select
        If sAdd <> "" Then Range(sAdd).Insert                   '--- insére colonnes
        If sDel <> "" Then Range(sDel).Delete Shift:=xlToLeft   '--- supprime colonnes
        '--- récupère données de la feuille ASE
        Rows("2:" & ActiveSheet.UsedRange.Rows.Count).Copy wSh.Cells(xC, 1)  '--- à voir --- "1:" ou "2:"
        xC = wsh.UsedRange.Rows.Count + 1
        '--- referme
        wB.Close SaveChanges:=False
        Set wB = Nothing
    End Sub
    Cordialement.

Discussions similaires

  1. comment optimiser le code avec visual c# ?
    Par isoman dans le forum C#
    Réponses: 8
    Dernier message: 30/10/2008, 15h05
  2. comment optimiser le code avec eclipse ?
    Par isoman dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 28/10/2008, 16h36
  3. Comment optimiser ce code?
    Par BnA dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 21/07/2007, 12h25
  4. comment optimiser son code en calcul ???
    Par gronaze dans le forum C
    Réponses: 5
    Dernier message: 21/03/2006, 10h41
  5. [Perf] Comment optimiser son code ?
    Par Frifron dans le forum Général Java
    Réponses: 12
    Dernier message: 11/08/2005, 09h05

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