sebkil28
XLDnaute Nouveau
Bonjour à tous,
Je me prends la tête depuis ce matin sur une macro qui se borne à ne pas attendre la fin d'éxecution de ma comande Application.calculate
Je pensais qu'excel attendrait la fin du calcul (Calcul matricielle pour info) mais la macro continue sont exécution et du coup le résultat que j'attends n'est pas là !
Quelqu'un saurait me dire pourquoi et comment indiquer à excel de finir les calculs avant de continuer ?
extrait de mon code qui est dans un UserForm
	
	
	
	
	
		
	
		
			
		
		
	
				
			Je me prends la tête depuis ce matin sur une macro qui se borne à ne pas attendre la fin d'éxecution de ma comande Application.calculate
Je pensais qu'excel attendrait la fin du calcul (Calcul matricielle pour info) mais la macro continue sont exécution et du coup le résultat que j'attends n'est pas là !
Quelqu'un saurait me dire pourquoi et comment indiquer à excel de finir les calculs avant de continuer ?
extrait de mon code qui est dans un UserForm
		Code:
	
	
	Sub ListBox1_Change()
Set f = Sheets("suivi serie")
Me.ListBox2.Clear
For i = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(i) = True Then 'condition : si l'élément est sélectionné
f.Cells(55, 7) = Me.ListBox1.List(i) 'affiche l'élément dans la première cellule vide (colonne O)
End If 'fin de la condition
Next i
' lancement des calculs matricielle
Application.Calculate
' liste câblage par rapport au train selectionné + suppression des doublons
Set mondico = CreateObject("Scripting.Dictionary")
For Each c In f.Range("harn2")
    mondico(c.Value) = ""
Next c
f.[Q1].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
' Ajout liste câblage dans listbox2
Dim cel As Range 'déclare la variable cel (CELlule)
 For Each cel In f.Range("harn")
        Me.ListBox2.AddItem cel.Value 'ajoute ;la valeur de la cellule à la ListBox2
    Next cel
f.Range("harn").ClearContents
f.Cells(55, 7).ClearContents
Application.Calculate
' suite de la macro non finalisée
End Sub