P
philippe
Guest
Bonjour à tous
comme vous pourrez le voir ds le code ci-dessous, je récupère une valeur ds la feuil1 et je copie les cellules adjacentes correspondant à cette valeur ds la feuille2. Bon jusque là tout va bien.
Comme cette valeur peut très bien ne pas se trouver ds ma base de donnée, j'aimerais qu'un msgbox le signale.
Mon problème, c'est que je me mélange ds les boucles du code et que ce msgbox apparaît là ou je ne voudrais pasqu'i apparaisse
Je joins ci-dessous le code, en espérant que l'un de vous trouvera la solution
Merci par avance
Philippe
comme vous pourrez le voir ds le code ci-dessous, je récupère une valeur ds la feuil1 et je copie les cellules adjacentes correspondant à cette valeur ds la feuille2. Bon jusque là tout va bien.
Comme cette valeur peut très bien ne pas se trouver ds ma base de donnée, j'aimerais qu'un msgbox le signale.
Mon problème, c'est que je me mélange ds les boucles du code et que ce msgbox apparaît là ou je ne voudrais pasqu'i apparaisse
Je joins ci-dessous le code, en espérant que l'un de vous trouvera la solution
Merci par avance
Philippe
Code:
Private Sub CommandButton1_Click()
Dim X As String, Cel As Range, Tbl As Variant, L As Integer
ReDim Tbl(1 To 4)
With Sheets('Feuil2')
.Range('A:F').ClearContents
If .Range('A1') = '' Then
L = 1
Else: L = .Range('A1').End(xlUp).Row + 1
End If
End With
X = TextBox1.Value
If X = '' Then
MsgBox ('Vous n'avez pas rentré de valeur')
ElseIf X > 12 Then
MsgBox ('veuillez rentrer un chiffre de 1 à 12')
End If
With Sheets('Feuil1')
For Each Cel In .Range('B1:B' & .Range('B65536').End(xlUp).Row)
If Cel = X Then
Tbl(1) = Cel.Value: Tbl(2) = Cel.Offset(0, 1).Value: Tbl(3) = Cel.Offset(0, 2).Value: Tbl(4) = Cel.Offset(0, 3).Value
With Sheets('Feuil2')
'Copie la valeur x en A et copie les cellules adjacentes de la feuille 1 jusqu'en D
.Range('A' & L & ':D' & L).Value = Tbl
L = L + 1
End With
End If
Next Cel
End With
End Sub