pas à pas détaillé=OK, défilement normal=NOK

zacari

XLDnaute Nouveau
Bonjour le forum,

Je suis en face d'un problème assez incompréhensible !
Quand je lance ma macro normallement, elle ne fonctione pas et quand je l'a fait défiler pas à pas détaillé, (sans jamais sortir de vb, je le précise) elle fonctione impécablement !! :confused:

voici ma macro :

Private Sub Worksheet_SelectionChange(ByVal Polo As Range)
'creer des listes
If Not Application.Intersect(Polo, Range("w10")) Is Nothing Then
If Feuil3.List1 = 1 Then
Dim str As String
'
str = ma_liste(Polo)
Range("w10").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=str
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End If
End If
'
End Sub

elle renvoie à la fonction suivante :

Function ma_liste(cellule As Range)
Dim i As Integer, liste As String
'
For i = 0 To (Range("S4").Value - 1)
If Cells(8 + (14 * i), 14).Value <> "" Then
If i = 0 Then
liste = Cells(8 + (14 * i), 14).Value & " " & Cells(8 + (14 * i), 14 + 1).Value
Else
liste = liste & "," & Cells(8 + (14 * i), 14).Value & " " & Cells(8 + (14 * i), 14 + 1).Value
End If
End If
Next
'
'Application.Wait (Now + TimeValue("00:00:01"))
ma_liste = liste
End Function

A noter que j'ai tenter d'ajouter une temporisation d'une seconde mais ça n'a rien donner !!!

Ah oui, dans tout ça j'ai oublié de vous dire ce qui se passe : Au lieu de me créer une liste normale, il me copie ma liste sur une seule ligne, voir ci dessous :

Normallement dans ma cellule W10 :
Etape 1
Etape 2
...

Alors que là, il me fait :
Etape 1, Etape 2, ...

Voilà, merci d'avance à ceux qui y comprennent quelque chose et à leur éventuelle réponse.
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 370
Messages
2 087 693
Membres
103 641
dernier inscrit
anouarkecita2