Bonjour,
En sortant de ma feuille de calcul vente (Clic sur onglet investissement), je lance un contrôle qui alerte que si j'ai sélectionné une activité, je mets en évidence que la cellule nombre d'heures et vide.
Je pose la question de savoir si c'est normal ou pas.
A la question de la MSGBOX voulez-vous corriger = "oui" je retourne dans la feuille ventes et me positionne sur la cellule A1 par exemple.
A la réponse "Non" (Confirme que c'est normal), je reste dans la feuille active (Suite au changement de feuille au départ onglet investissement) et me positionne dans la cellule A1.
J'ai essayé toutes les solutions possibles suivant mon niveau de compétence, je n'ai pas réussi.
Lorsque j'arrive à traiter la réponse "oui", la réponse non me retourne dans la feuille de vente.
Visiblement je ne maitrise pas le retour de vbOk ou vbNo
Ligne de code dans la feuille vente.
'************************************************************
'Contrôle qu'il n'y a pas une activité avec des heures sans tarif horaire
'A défaut on affecte le prix moyen de l'exercice précédent
'************************************************************
Dim sRepy As String
Dim sRep As String
Dim Derli 'Dernière ligne
Dim r 'Compteur
Dim Activite 'Aliment l'activité concernée
Derli = 37 'Positionnement de la dernière ligne de contrôle
r = 0 'Initialisation de la variable
For r = 10 To Derli Step 1
If Range("H" & r).Text <> "" And Range("R" & r).Value = 0 Then
Activite = Range("H" & r).Text
MsgBox "Vous avez sélectionné une activité qui ne comporte pas d'heures prévisionnelles, êtes vous sûr de cette option ! " & Chr(10) & Chr(10) & _
"Cette sitution est possible si vous aviez du chiffre d'affaires dans l'exercice N-1 et que vous n'envisagez pas d'action commerciale dans le nouvel exercice. " & Chr(10) & Chr(10) & _
"Veuillez apporter les éventuelles corrections soit : " & Chr(10) & Chr(10) & _
" - " & "Activité conernée : " & Activite & Chr(10) & Chr(10) & "Voulez-vous procéder à une correction ? ", vbQuestion + vbYesNo, "Prix de vente horaire"
'sRep = vbOK
MsgBox sRep
End If
Next r
If sRep = vbOK Then Sheets("Ventes").Activate
Range("A1").Select
' If srep = vbCancel Then Range("A1").Select
' Cor2 = 0
End Sub
Situation que je ne comprends pas toujours bien, lorsque je mets un IF VBA me dit que le END IF n'est pas nécessaire, j'ai du mal à comprendre la subtilité.
Je joins un extrait de mon classeur ou le sujet me pose souci.
Merci par avance de votre concours.