[VBA] Run-time error : '35600' Index out of bound
Bonjour à tous,
J'ai un petit soucis en VBA Excel sur une macro attachée à un bouton.
En effet, j'utilise 2 ListView nommées LV_Ref et LV_Files. J'alimente LV_Ref, une ListView de 2 colonnes, à partir d'une feuille Excel contenant une liste de fichiers & n° de version. LV_Files n'est pas développée ici mais j'y reviendrai car j'ai le même problème.
J'ai créé un bouton, Btn_Edit, qui me permet d'accéder à la deuxième colonne de mes éléments de LV_Ref pour pouvoir le modifier à l'aide d'un InputBox.
Donc, quand je clique sur mon bouton Btn_Edit, tout marche parfaitement SAUF pour le deuxième élément de ma ListView qui me produit systématiquement le message d'erreur :
Run-time error : '35600'
Index out of bound
Si quelqu'un a une idée, je suis preneur...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
Sub Btn_Edit_Click()
Application.ScreenUpdating = False
' déclaration des variables
Dim i As Long, ItemTest As String
' teste si un élément est sélectionné
If Not LV_Ref.SelectedItem Is Nothing Then
' i est l'index de l'élément sélectionné
i = LV_Ref.SelectedItem.Index
' là je ne sais plus de tête mais ça doit bien servir à quelque chose
ItemTest = LV_Ref.SelectedItem
' le texte de mon sous-item
LV_Ref.SelectedItem.ListSubItems.Item(1).Text = InputBox("Entrez un numéro de version pour " & LV_Ref.SelectedItem.Text, "FileVersion", LV_Ref.SelectedItem.ListSubItems.Item(1).Text)
' petit test pour vérifier que le texte de mon sous-item n'est pas vide
If LV_Ref.SelectedItem.ListSubItems.Item(1).Text = "" Then
Exit Sub
Else
ItemTest = LV_Ref.SelectedItem.ListSubItems.Item(1).Text
End If
End If
'
Application.ScreenUpdating = True
End Sub |
Merci d'avance
Alors en fait, le message d'erreur provenait du fait que ma liste sur la feuille Excel n'était pas trié dans l'ordre alphabétique alors que j'avais spécifié à la ListView de le faire et de ce fait, l'index recherché (en réalité le 3) n'existait plus. Je ne sais franchement pas pourquoi mais c'est la solution.