Bug dans mon code USF quand le numero reference est une date

  • Initiateur de la discussion Initiateur de la discussion SSIAP2
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

SSIAP2

XLDnaute Occasionnel
Bonjour à tous et bonne année.

Je souhaiterais avoir vos lumieres au sujet d'un petit beug dans mon USF

j'utilise la macro suivante pour charger ma listview faut que l'index que j'utilise ne pas des numero mais des date et c'est la que sa va plus il me faus l'erreur
Code:
Erreur d'execution 91
variable objet ou variable de bloc with non definie
pourtant il me semble avoir déclaré toute mes variables
je precise si à la place des date je remplace par des chiffres j'ai pas de soucis.

Aurez vous la gentillesse de m'aider svp merci d'avance.



Code:
Private Sub P8_Change()
Dim derLi As Long
Dim addresseDebut As String
Dim addresseFin As String
Dim i As Integer

L2.ListItems.Clear

With Sheets("Planning")
derLi = .Range("B65536").End(xlUp).Row
addresseDebut = .Range("A6:A" & derLi).Find(P8, , , xlWhole).Address
addresseFin = .Range(addresseDebut).Offset(1, 0).Address

Do While .Range(addresseFin) = "" And .Range(addresseFin).Row <= derLi
    addresseFin = .Range(addresseFin).Offset(1, 0).Address
Loop
addresseFin = .Range(addresseFin).Offset(-1, 0).Address

For Each cell In .Range(addresseDebut & ":" & addresseFin)
    ListView1.ListItems.Add , , cell.Offset(0, 1)
    For i = 2 To 2
        L2.ListItems.Item(ListView1.ListItems.Count).ListSubItems.Add , , cell.Offset(0, i)
        
        
    Next i
Next
End With


End Sub
 

Pièces jointes

Re : Bug dans mon code USF quand le numero reference est une date

Bonsoir SSIAP2

1er problème vient de la recherche de la date texte, alors qu'il faut une date nombre
addresseDebut = .Range("A6:A" & derLi).Find(Cdate(P8), , , xlWhole).Address

2ème problème à la fin de ton code, tu utilises l'objet "Listview1" alors que celui-ci n'existe pas

Le voici en entier, corrigé
VB:
Private Sub P8_Change()
  Dim derLi As Long
  Dim addresseDebut As String
  Dim addresseFin As String
  Dim i As Integer


  L2.ListItems.Clear


  With Sheets("Planning")
    derLi = .Range("B65536").End(xlUp).Row
    addresseDebut = .Range("A6:A" & derLi).Find(CDate(P8), , , xlWhole).Address
    addresseFin = .Range(addresseDebut).Offset(1, 0).Address


    Do While .Range(addresseFin) = "" And .Range(addresseFin).Row <= derLi
      addresseFin = .Range(addresseFin).Offset(1, 0).Address
    Loop
    addresseFin = .Range(addresseFin).Offset(-1, 0).Address


    For Each cell In .Range(addresseDebut & ":" & addresseFin)
      L2.ListItems.Add , , cell.Offset(0, 1)
      For i = 2 To 2
        L2.ListItems.Item(Me.L2.ListItems.Count).ListSubItems.Add , , cell.Offset(0, i)
      Next i
    Next
  End With
End Sub

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
523
Réponses
3
Affichages
672
  • Question Question
Microsoft 365 Question code VBA
Réponses
2
Affichages
452
Réponses
2
Affichages
1 K
Réponses
22
Affichages
3 K
Réponses
8
Affichages
1 K
Retour