Dans un fichier, il y a des champs contenant des n° de chèques sous la forme suivante : CHQ. N.6886949. J'extrait le n° du chèque par des extraction gauche et droite dans un variable : Zone que je déclare en string. Dans un autre fichier, je possède un tableau contenant en colonne 1 (déclaré en numérique) le n° du chèque et dans les autres colonnes des informations que je souhaite extraire.
Sub test2()
Dim N%, Zone$, Zone2&
Dim Fh As Worksheet, Mn As Worksheet
Set Fh = Workbooks("Fic-J - 2020.xlsx").Sheets("Chèques")
Set Mn = Workbooks("Menu budget - 2020.xlsm").Sheets("Libellé=")
Zone = Left(Mn.Cells(8, 1), 14)
Zone = Right(Zone, 7)
N = Application.Match(Zone, Fh.Columns(1), 0)
If IsError(N) Then
MsgBox "non trouvé"
Else
MsgBox N
End If
End Sub
Sub test2()
Dim N%, Zone$, Zone2&
Dim Fh As Worksheet, Mn As Worksheet
Set Fh = Workbooks("Fic-J - 2020.xlsx").Sheets("Chèques")
Set Mn = Workbooks("Menu budget - 2020.xlsm").Sheets("Libellé=")
Zone = Left(Mn.Cells(8, 1), 14)
Zone = Right(Zone, 7)
N = Application.Match(Zone, Fh.Columns(1), 0)
If IsError(N) Then
MsgBox "non trouvé"
Else
MsgBox N
End If
End Sub
n°chèque | Date émission | Date dépot |
4 823 225 | 25/09/18 | 28/09/18 |
4 823 226 | 25/09/18 | 04/04/19 |
4 823 227 | 25/09/18 | 10/01/19 |
4 823 234 | 12/01/19 | 17/01/19 |
4 823 235 | 17/01/19 | 24/01/19 |
Dans ce cas, il est normal qu'il y ai une incompatibilité de type puisque Zone est alpha et la colonne 1 est numérique Si à la place de Zone = Right(Zone, 7), j'écris Zone2 = Right(Zone, 7) sachant que Zone2 est numérique, cela fonctionne et il trouve mon n° de chèque dans la colonne. Par contre, si le n° de chèque ne figure pas dans la colonne il y a incompatibilité de type. Pourquoi ??? |