Le dernier sur lequel ça s'est produit
'Remplissage de la liste des documents
With Logiciel.Sheets("SBCN")
'Détermination de la ligne sélectionnée
Ligne_sélectionnée = 0
For Ligne = 2 To NbLignes
If (.Cells(Ligne, VbColonne_SBCN_Préfixe) & "-" & .Cells(Ligne, VbColonne_SBCN_Référence) = Liste_documents.Column(0) Or _
CStr(.Cells(Ligne, VbColonne_SBCN_Référence)) = Liste_documents.Column(0)) And CStr(.Cells(Ligne, VbColonne_SBCN_Item)) = Liste_documents.Column(1) Then
Ligne_sélectionnée = Ligne
Exit For
End If
Next Ligne
'Report des données de la CN sélectionnée dans les champs du formulaire
Me.Controls("DTPicker" & VbColonne_SBCN_Date_entrée_en_vigueur) = .Cells(Ligne_sélectionnée, VbColonne_SBCN_Date_entrée_en_vigueur)
For Each Ctrl In Me.Controls
If IsNumeric(Right(Ctrl.Name, 1)) And TypeName(Ctrl) <> "Label" Then
If TypeName(Ctrl) = "TextBox" Then
i = Right(Ctrl.Name, Len(Ctrl.Name) - 7)
Me.Controls("TextBox" & i) = .Cells(Ligne_sélectionnée, Val(i)).Value
End If
If TypeName(Ctrl) = "ComboBox" Then
i = Right(Ctrl.Name, Len(Ctrl.Name) - 8)
Me.Controls("ComboBox" & i) = .Cells(Ligne_sélectionnée, Val(i)).Value
End If
If TypeName(Ctrl) = "DTPicker2" Then
i = Right(Ctrl.Name, Len(Ctrl.Name) - 8)
Me.Controls("DTPicker" & i) = Now
Me.Controls("DTPicker" & i) = Null
Me.Controls("DTPicker" & i) = .Cells(Ligne_sélectionnée, Val(i)).Value
End If
If TypeName(Ctrl) = "CheckBox" Then
i = Right(Ctrl.Name, Len(Ctrl.Name) - 8)
Me.Controls("CheckBox" & i) = .Cells(Ligne_sélectionnée, Val(i))
End If
End If
Next
Autre cas foireux ce matin :
With Logiciel.Sheets("SBCN")
'Calcul de l'échéance à partir de l'entrée en vigueur
Date_entrée_vigueur = .Cells(Ligne_proposée, VbColonne_SBCN_Date_entrée_en_vigueur)
a = DateSerial(Year(Date_entrée_vigueur), Month(Date_entrée_vigueur) + .Cells(Ligne_proposée, VbColonne_SBCN_Echéance_heures_DEV), Day(Date_entrée_vigueur))
End With
Ne fonctionne que si la date dans la cellule mise dans la variable Date_entrée_vigueur est en format nombre. Si elle est en format date le calcul plante. C'est pourtant une banale addition.
Manu