Problème commande openform

Adri -  
 Adri -
Bonjour,

J'ai un problème pour rédiger une condition openform

voici mon code

ElseIf listetdd.Value = "Donation notariée" Then
    stDocName = "Donation notariée"
    stLinkCriteria = (((Typedossier.Value) = "Donation notariée") And ((Numcustomer.Value) = Numcustomer))
    DoCmd.OpenForm stDocName, , , stLinkCriteria


Une fois que le code s'exécute j'ai une fenêtre qui m'affiche "Faux". Je ne comprend pas pq.

Ce que je voudrais faire, en cliquant sur un bouton, c'est que on ouvbre un formulaire dont le numcustomer équivaut au numcustomer de l'enregistrement en cours mais (car il y a plusieurs numcustomer identiques), qu'il sélectionne uniquement celui dont typedossier = "donation notariée"

Qqn pourrait-il m'aider?

MERCI !!!
Configuration: Windows Vista
Firefox 2.0.0.13

8 réponses

  1. Polux31 Messages postés 7219 Statut Membre 1 204
     
    salut,

    Pourquoi le ElseIf en début de condition ????
    0
  2. Adri
     
    Simplement pcq je pars d'une listebox et que je vais mettre la même formule (averc un truc qui change à chaque fois évidemment!) pour chaque champ différent, d'où pas besoin de copier l'entièreté du code ;)
    0
  3. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Je ne comprends pas plus ... la syntaxe est :
    If .... Then ... ElseIf Then ..... End If
    , et le retour d'une condition est toujours False ou True.

    ;o)

    polux
    0
  4. Adri
     
    Bon voilà mon code complet...

    Private Sub Command24_Click()
    Dim stDocName As String
    Dim stLinkCriteria As String
    Dim Newfiche As QueryDef
    DoCmd.RunCommand acCmdSaveRecord
    If listetdd.Value = "Donation bancaire" Then
        stDocName = "Donation bancaire"
        stLinkCriteria = "Typedossier =" & Me![listetdd]
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    ElseIf listetdd.Value = "Donation notariée" Then
        stDocName = "Donation notariée"
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    ElseIf Type_de_dossier.Value = "Donation par abandon d'usufruit" Then
        stDocName = "Donation par abandon d'usufruit"
        stLinkCriteria = "[Numéro de dossier]=" & Me![Numéro de dossier]
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    ElseIf Type_de_dossier.Value = "Partage (hors succession)" Then
        stDocName = "Partage (hors succession)"
        stLinkCriteria = "[Numéro de dossier]=" & Me![Numéro de dossier]
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    ElseIf Type_de_dossier.Value = "Succession" Then
        stDocName = "Succession"
        stLinkCriteria = "[Numéro de dossier]=" & Me![Numéro de dossier]
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    ElseIf Type_de_dossier.Value = "Assurance temporaire décès" Then
        stDocName = "Assurance temporaire décès"
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    ElseIf Type_de_dossier.Value = "Donation par renonciation à une rente" Then
        stDocName = "Donation par renonciation à une rente"
        stLinkCriteria = "[Numéro de dossier]=" & Me![Numéro de dossier]
        DoCmd.OpenForm stDocName, , , stLinkCriteria
    Else
    MsgBox ("Vous n'avez pas sélectionné de type de dossier!")
    End If
    End Sub


    Ce que je cherche, c'est à modifier la condition where de l'expression openform pour mettre 2 arguments et non un comme critère de sélection.

    Le if, elseif, else... je pense que ça devrait aller ;-)

    Merci pour votre aide
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Polux31 Messages postés 7219 Statut Membre 1 204
     
    ok je vois mieux maintenant ... :D)

    Il faut mettre les 2 conditions, si on veut que les 2 conditions soient remplies il faut utiliser AND, et si l'on veut que seulement l'une des conditions soient remplies il faut utiliser OR. Par exemple :
    If listetdd.Value = "Donation bancaire"  AND Type_de_dossier.Value = "Donation par abandon d'usufruit" Then
    ....
    ElseIf ... etc


    ;o)

    polux
    0
  7. Adri
     
    J'obtiens l'erreur "Incompatibilité de type"

    :S

    Le problème est que j'appelle un numcustomer identique à l'enregistrement en cours, mais comme dit plus haut, il y a un plusieurs enregistrements avec le même numcustomer et il me faut celui où typedossier = "Donation notariée"

    Et là tu n'as jamais qu'une seule solution possible.

    Mais ça ne fonctionne pas :(
    0
  8. Polux31 Messages postés 7219 Statut Membre 1 204
     
    heuuu j'espère que tu n'as pas fait un copier/coller de mon exemple ... j'ai pris n'importe koi ... il faut l'adapter à ton code ...
    0
  9. Adri
     
    Merci ! Je m'en doute un peu....

    Je suis sur ce problème depuis quelques jours ;-)
    0