Msg d'information en SQL, VB

Bonjour,
j'ai créer une fonction qui prend la valeur d'un champ pour nous amener sur une autre page, hors ce champ n'est pas toujours complété, et si on appuie sur le bouton il y a un "bug".

Comme faire apparaitre un message d'information du style ( Impossible de visualiser cette page car le champ concerné est vide )

If idOF <> "" Then
DonneOffre = CInt(Me.idOF.Value)
Else comment on fait le message d'erreur ici
End If

Merci beaucoup. :D
Configuration: Windows XP
Firefox 2.0.0.14

7 réponses

  1. bonjour,

    If idOF <> "" Then 
        DonneOffre = CInt(Me.idOF.Value) 
    Else 
        MsgBox "Impossible de visualiser cette page car le champ concerné est vide",VbExclamation,"Erreur Saisie"
    End If 


    ;o)

    polux
    1. Merci, c'est exactement ce que je voulais, néanmoins j'ai bien la fenêtre mais ça me transfert quand même de page, en me plaçant sur le premier enregistrement !
      Dans l'idéal Il faudrait en fait rajouter quelque chose pour 'dire de ne rien faire'.
      Sinon c'est déjà super, j'ai plus d'erreur avec la fenêtre de Debogage.

      A+ merci Polux
      1. re,

        If idOF <> "" Then 
            DonneOffre = CInt(Me.idOF.Value) 
        Else 
            MsgBox "Impossible de visualiser cette page car le champ concerné est vide",VbExclamation,"Erreur Saisie"
        '    Exit Sub ou Exit Function   --> selon la procédure où se trouve le If ... Then...
        End If
        1. Rarf c'est une fonction mais ça ne fonctionne pas pour autant !

          Public Function DonneOffre() As Integer
          If idOF <> "" Then
          DonneOffre = CInt(Me.idOF.Value)
          Else: MsgBox "Impossible de visualiser cette page car le champ concerné est vide", vbExclamation, "Erreur Saisie"
          End If
          End Function

          En tout cas ce n'est pas grave, c'est déjà bien comme ça, j'y reviendrais peut-être demain, en tout cas ce n'est que mineur comme problème.

          A+ bonne soirée
          1. salut,

            tu n'as pas mis le Exit
            Public Function DonneOffre() As Integer 
            If idOF <> "" Then 
                DonneOffre = CInt(Me.idOF.Value) 
            Else
                MsgBox "Impossible de visualiser cette page car le champ concerné est vide", vbExclamation, "Erreur Saisie"
                DonneOffre = 0
                Exit Function
            End If 
            End Function 


            De plus ta fonction doit retourner un entier .... ce n'est pas très bon. Il serait préférable de retourner un booléen et de traiter le retour dans la procédure qui appelle cette fonction.

            Public Sub DonneOffre()
            Dim ret As Integer
            If TestChamp(Me.idOF.Value) = False Then
               MsgBox "Impossible de visualiser cette page car le champ concerné est vide", vbExclamation, "Erreur Saisie"
            Else
               ret = Me.idOF.Value
            End If
            End Sub
            
            Public Function TestChamp(ByVal str As Integer) As Boolean
            If str = "" Then
               TestChamp= False
            Else
               TestChamp= True
            End If
            End Function


            Bon courage

            ;o)

            Polux
            1. Olala, cela commence à être beaucoup trop compliquer pour moi.

              Sinon pour info, le exit je l'avais volontairement enlever puisqu'il ne sert à rien (tout au moins en apparence) je suis quand même envoyée sur l'autre page.

              Et le dernier code est trop compliquer, je ne comprends pas donc je vais laisser comme ça, cela fonctionne malgré tout, il faudra juste revenir sur la page manuellement.

              A+ merci