OVH Cloud OVH Cloud

Debutant : Comment Faire

5 réponses
Avatar
Franck
Bonjour,=20

j'ai une zone de liste (liste12)bas=E9 sur une=20
requ=EAte qui m'affiche les personnes =E0 relancer

A cot=E9 de cette liste, j'ai une zone de texte (Texte39)
avec comme source contr=F4le : =3DListe12.column(3)
Avec =3DListe12.column(3), je r=E9cup=E8re la r=E9f=E9rence du=20
contact

Sur l'=E9venement "double clic" de la liste12, j'ai mis le=20
code ci-dessous

''Je Test si la liste est vide''
If Me![Liste12].ListCount =3D 0 Then
Respons =3D MsgBox("ACUNE PERSONNE A RELANCER", vbOKOnly +=20
vbInformation)
Exit Sub

Else

''J'execute la macro "recherche" pour aller sur la fiche=20
du contact''''
''La macro "Recherche" commence par
AtteindreunEnregistrement : R=E9f=E9rence =3D[Texte39] puis
Atteindrecontr=F4le : R=E9f=E9rence =3D[EmailRep]''

stDocName =3D "Recherche"
DoCmd.RunMacro stDocName
End If

'Les probl=E8me commence l=E0!!!'
'Ici j'essai de dire que si il n'y a rien dans les champs=20
daterelance mettre la date' mais comment =EAtre sur que ce=20
code s'=E9x=E9cute apr=E8s la macro "recherche"

If IsNull([Form_Relance].Form![DateRelance1]) And IsNull
(Form_Relance.Form![DateRelance2]) And IsNull
(Form_Relance.Form![DateRelance3]) And IsNull
(Form_Relance.Form![DateRelance4]) Then
Form_Relance.Form![DateRelance1] =3D Date

ElseIf Form_Relance.Form![DateRelance1] <> "" And IsNull
(Form_Relance.Form![DateRelance2]) And IsNull
(Form_Relance.Form![DateRelance3]) And IsNull
(Form_Relance.Form![DateRelance4]) Then
Form_Relance.Form![DateRelance2] =3D Date

ElseIf Form_Relance.Form![DateRelance1] <> "" And=20
Form_Relance.Form![DateRelance2] <> "" And IsNull
(Form_Relance.Form![DateRelance3]) And IsNull
(Form_Relance.Form![DateRelance4]) Then
Form_Relance.Form![DateRelance3] =3D Date

ElseIf Form_Relance.Form![DateRelance1] <> "" And=20
Form_Relance.Form![DateRelance2] <> "" And=20
Form_Relance.Form![DateRelance3] <> "" And IsNull
(Form_Relance.Form![DateRelance4]) Then

Form_Relance.Form![DateRelance4] =3D Date
frm.Actualiser

Else
Me.Codecontact.SetFocus
End If
End Sub

Le but final de tous =E7a est :
Quand la personne clic sur la liste12 aller directement=20
sur la fiche concernant le contact (grace =E0 la=20
macro "Recherche")
Une fois sur la fiche du contact ex=E9cuter le code ci-
dessus mais sans r=E9=E9x=E9cuter la macro
je pense qu'il faudrait au lieu de la macro, =E9crire=20
directement le code en Vba (mais je sais pas faire)

J'esp=E8re etre clair dans mon explication

Merci pour vos r=E9ponse
Salutations

5 réponses

Avatar
Xavier HUE
Bonjour Franck,

je pense qu'il faudrait au lieu de la macro, écrire
directement le code en Vba (mais je sais pas faire)
Force toi à écrire en VBA, tu verras que l'on peut faire

beaucoup de choses.

Ceci étant, pour répondre à ton problème, si j'ai bien
compris le contexte:
- 1 formulaire basé sur une requête qui t'affiche toutes
les infos de tes contacts
- Sur ce même formulaire, une liste déroulante liste12

Dans ce cas:
''Je Test si la liste est vide''
If Me![Liste12].ListCount = 0 Then
Respons = MsgBox("ACUNE PERSONNE A RELANCER", vbOKOnly +
vbInformation)
Exit Sub

Else
'' Filtrer les enregistrements du formulaire
Me.Filter = "Tes critères de sélection"
Me.FilterOn = True

''Puis tu déroules ton code de vérification

If IsNull(Me.DateRelance1) And IsNull

Est-ce que je suis en dehors des clous, ou cela t'éclaire-
t-il?

Cordialement.

Avatar
Franck
Bonjour Xavier,

Merci pour votre réponse

En fait c'est un peu près ça !

Sauf que dans mon evènement Double Clic
J'exécute la macro "RECHERCHE"

Else

stDocName = "Recherche"
DoCmd.RunMacro stDocName

Et vous avez écrit

Else
'' Filtrer les enregistrements du formulaire
Me.Filter = "Tes critères de sélection"
Me.FilterOn = True

''Puis tu déroules ton code de vérification

If IsNull(Me.DateRelance1) And IsNull


En fait après le else j'aimerai bien pourvoir aller sur
l'enregistrment (ecrit vba et supprimer ma macro)


''La macro "Recherche" commence par
AtteindreunEnregistrement : Référence =[Texte39] puis
Atteindrecontrôle : Référence =[EmailRep]''


Merci de me donner un coup de main




-----Message d'origine-----
Bonjour Franck,

je pense qu'il faudrait au lieu de la macro, écrire
directement le code en Vba (mais je sais pas faire)
Force toi à écrire en VBA, tu verras que l'on peut faire

beaucoup de choses.

Ceci étant, pour répondre à ton problème, si j'ai bien
compris le contexte:
- 1 formulaire basé sur une requête qui t'affiche
toutes

les infos de tes contacts
- Sur ce même formulaire, une liste déroulante liste12

Dans ce cas:
''Je Test si la liste est vide''
If Me![Liste12].ListCount = 0 Then
Respons = MsgBox("ACUNE PERSONNE A RELANCER", vbOKOnly +
vbInformation)
Exit Sub

Else
'' Filtrer les enregistrements du formulaire
Me.Filter = "Tes critères de sélection"
Me.FilterOn = True

''Puis tu déroules ton code de vérification

If IsNull(Me.DateRelance1) And IsNull

Est-ce que je suis en dehors des clous, ou cela
t'éclaire-

t-il?

Cordialement.
.




Avatar
Xavier HUE
Re,

En fait après le else j'aimerai bien pourvoir aller sur
l'enregistrment (ecrit vba et supprimer ma macro)
Désolé, je ne vois pas ce que tu cherches à faire.

AtteindreEnregistrement permet de sélectionner un
enregistrement précédent, suivant, premier, dernier ou par
un n° de rang, qui n'a rien à voir avec une clé??!!

Cependant, si ça peux t'aider, pour convertir une macro en
code VBA:
Clic sur la macro, puis menu Outils, Macro, Convertir
les macros en VB.

Si cela ne répond toujours pas à ts interrogations, essaie
d'être plus précis: nombre de formulaire en jeu, controles
sur ton/tes formulaires, sources des formulaires. En
résumé, description précise du contexte.

Cordialement.

Avatar
franck
Et désolé pour le manque d'infos
Avatar
Anor
Bonjour,

franck :
| Et désolé pour le manque d'infos

C'est bien de dire merci, mais en répondant dans le fil initial, peut-être que
celui à qui tu t'adresses se serait senti "remercié", et nous, nous aurions
compris que pour la première fois depuis longtemps, une solution proposée
fonctionnait !!

Ouvrir un nouveau fil de conversation, c'est aussi facile pour nous de comprendre de quoi il
s'agit
que si on donnait le catalogue du parfait bricoleur à un enfant de 2 ans pour qu'il choisisse
ses cadeaux de Noël.

;-))
--
à+
Arnaud
--------------------------------------------------
*Avant toute chose* : http://users.skynet.be/mpfa/
Access Memorandum - http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------