Bonjour à tous,
Une nouvelle fois, je vous redemande de l'aide concernant du code en VBA.
Je m'explique :
J'ai un tableau dans lequel les commerciaux doivent venir renseigner un rapport d'activité. Sur ce tableau, dès qu'ils renseignent une date dans la colonne A, il y a différents MsgBox qui apparaissent leur demander de remplir certaines informations. Ces informations sont ensuite inscrites dans les cases correspondantes.
Je bloque sur une chose. Dans la colonne E (objectif de visite), j'ai une liste prédéfinie de données. Je ne veux pas que mes commerciaux renseigne autre chose que ce que j'ai prédéfinie. Ma problématique est que je ne sais pas comment faire pour faire afficher un MsgBox avec cette liste afin que tous mes champs de remplissage passent par ces MsgBox ...
Est-ce que quelqu'un peut me donner un coup de main? Je vous met le code que j'ai déjà fait. Je pense qu'il peux être améliorer mais je débute en VBA.
Merci par avance.
	
	
	
	
	
		
	
		
			
		
		
	
				
			Une nouvelle fois, je vous redemande de l'aide concernant du code en VBA.
Je m'explique :
J'ai un tableau dans lequel les commerciaux doivent venir renseigner un rapport d'activité. Sur ce tableau, dès qu'ils renseignent une date dans la colonne A, il y a différents MsgBox qui apparaissent leur demander de remplir certaines informations. Ces informations sont ensuite inscrites dans les cases correspondantes.
Je bloque sur une chose. Dans la colonne E (objectif de visite), j'ai une liste prédéfinie de données. Je ne veux pas que mes commerciaux renseigne autre chose que ce que j'ai prédéfinie. Ma problématique est que je ne sais pas comment faire pour faire afficher un MsgBox avec cette liste afin que tous mes champs de remplissage passent par ces MsgBox ...
Est-ce que quelqu'un peut me donner un coup de main? Je vous met le code que j'ai déjà fait. Je pense qu'il peux être améliorer mais je débute en VBA.
Merci par avance.
		Code:
	
	
	Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    For i = 1 To 65536
        If Cells(i, 1).Value <> "" Then
            If Cells(i, 2) = "" Then
                cellule = "A" + Str(i)
                ' MsgBox "Veuillez saisir ... dans la cellule E" + Str(i), vbOKCancel
                saisie = InputBox("Veuillez saisir un nom de client pour la ligne" + Str(i), "Saisie du nom du client")
                Cells(i, 2).Value = saisie
             End If
            If Cells(i, 6) = "" Then
                cellule = "A" + Str(i)
                ' MsgBox "Veuillez saisir ... dans la cellule E" + Str(i), vbOKCancel
                saisie = InputBox("Veuillez saisir un compte rendu pour la ligne" + Str(i), "Saisie d'un compte rendu")
                Cells(i, 6).Value = saisie
             End If
            If Cells(i, 7) = "" Then
                cellule = "A" + Str(i)
                ' MsgBox "Veuillez saisir ... dans la cellule E" + Str(i), vbOKCancel
                saisie = InputBox("Veuillez saisir une suite à donner pour la ligne" + Str(i), "Saisie d'une suite à donner")
                Cells(i, 7).Value = saisie
            End If
        End If
    Next
End Sub
	
			
				Dernière édition: