Rebonjour Forum, Michel, JJM
Je sollicite votre attention sur un pb de vitesse d excecution de la macro.
Le programme suivant est celui d une macro situé dans un fichier dans le reseau d une entreprise. Ce fichier peut etre utilisé par tous aussi bien dans la ville A ou se situe le coeur du reseau qu´a l exterieur dans une ville annexe.
Le pb se produit lors de l excecution du fichier dans une ville annexe.
Le delai est interminable et peut necessiter jusqua 1 h pour s executer.
en effet chacune des lignes des codes (vert) prends une 30taine de seconde pour se mettre en action.
Ce que je voudrais savoir est si par une autre fonction le delai peut se reduire. ou si le pb est du au réseau et ce qu´il me reste à faire est de trouver une autre tactique..
Option Explicit
Option Base 1
Sub actualización_Etat_proyectos()
Dim X As Integer, NoFichierBouteille As Integer, NoFichierPot As Integer, Y As Integer
Dim Tableau() As String
Dim Direction As String
Dim Valeur As Double
Dim I As Integer
Application.ScreenUpdating = False
Direction = Dir('X:\\Modeles\\BOUTEILLE\\*.xls')
Do While Len(Direction) > 0 'liste tous les classeurs du repertoire
NoFichierBouteille = NoFichierBouteille + 1
ReDim Preserve Tableau(1 To NoFichierBouteille)
Tableau(NoFichierBouteille) = Direction
Direction = Dir()
Loop
If NoFichierBouteille > 0 Then
For X = 1 To NoFichierBouteille 'boucles sur les classeurs
' pour ne pas prendre en compte le classeur contenant la macro (synthese)
If Tableau(X) <> 'Inicio_Desarollo_Modelo.xls' Then
ActiveSheet.Cells(2, 16).Formula = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Etat'!G50'
If ActiveSheet.Range('p2') = 'Terminado' Then GoTo suivant
I = I + 1
ActiveSheet.Cells(I + 4, 2).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']PM'!I6' ActiveSheet.Cells(I + 4, 3).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']PM'!C41'
ActiveSheet.Cells(I + 4, 4).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Estandares'!D20'
ActiveSheet.Cells(I + 4, 5).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Moldes'!E27'
ActiveSheet.Cells(I + 4, 6).Value = 'BOUTEILLE'
ActiveSheet.Cells(I + 4, 7).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']PM'!av104'
ActiveSheet.Cells(I + 4, 8).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Etat'!E12'
ActiveSheet.Cells(I + 4, 9).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Etat'!E14'
ActiveSheet.Cells(I + 4, 10).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Etat'!g50'
ActiveSheet.Cells(I + 4, 11).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Etat'!H50'
ActiveSheet.Cells(I + 4, 12).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Etat'!I50'
ActiveSheet.Cells(I + 4, 13).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Etat'!J50'
ActiveSheet.Cells(I + 4, 14).Value = '='X:\\MODELES\\BOUTEILLE\\[' & Tableau(X) & ']Etat'!G52'
ActiveSheet.Hyperlinks.Add Anchor:=Range('O' & (I + 4)), Address:='X:\\Modeles\\BOUTEILLE\\' & Tableau(X), TextToDisplay:='ver Fichier'
End If
suivant:
Next X
End If
Merci de votre attention et de vos conseils par avance
DOM