Structure de fractionnement Access
anocheda
-
LatelyGeek Messages postés 1774 Date d'inscription Statut Membre Dernière intervention -
LatelyGeek Messages postés 1774 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Bon j'y ai passé trop de temps mais ca marche pas...je sais pas si tu es toujours la lately mais bon je recommence:
J'ai une table access qui s'appel "registre" c'est le registre des risques de mon projet.
chaque risque (les elements de ma table) est identifié par son 'type' , son 'MajorGroup' et son 'Component'
ceux sont trois champs de ma table.
j'ai egalement un champ RONumber qui est une serie numerique croissante qui represente le numero de mon risque
Dans ma table je souhaite trouve rle champ 'RBS' qui doit de la forme suivante:
j'aimerai que pour tout les champ de ma table avoir:
RBS = Type.MajorGroup.Component.X
X est un chiffre qui doit augmenter en fonction des autres risque ayant comme debut de RBS Type.MajorGroup.Component
en gros Tye est une lettre ( R ou O)
MajorGroup un chiffre entre 1 et 4
Component un chiffre entre 1 et 9
pour le premier risque qui aura
Tye = R
MajorGroup = 2
Component = 6
je veux RBS = R.2.6.1
le deuxieme RBS = R.2.6.2 par contre si MajorGroup = 1 pour un autre risque il faut RBS = R.1.6.1
J'ai crée un formulaire basée sur ma table qui montre de jolie facon totues les données
j ai réussi avec l'aide de laty a faire marcher le truc jusqu a ce que X depasse 9
je l ai fait sans faire de macro avec des formules du type
cle =[RBSType] & "." & [RBSMajorGroup] & "." & [RBSComponent]
Max =MaxDom("Right(RBS,1)";"Registre";"Left(RBS,5) = cle")+1
RBScalc =VraiFaux(EstNull([Max]);[cle] & "." & "1";[cle] & "." & [Max])
ca marche pas mal, apres je fait une marco ou je di
Me!RBS.Value= RBSCalc
mais il y a deux problemes:
ca s arret a 10
ca le fait a chaque fois que je lance ma macro donc si je rapui sur mon bouton le RBS =R.1.1.1 va devenir direct R.1.1.2 et ainsi de suite
pour le probleme de l'arret a 10 latelygeek ma donnée une astuce en faisant un truc du style:
=MaxDom(VraiFaux(Gauche(Droite([RBS];2);1)=".";Droite([RBS];1);Droite([RBS];2));"Registre";"Left([RBS];5) = [Cle]")
mais ca marche pas parceque je le fas directement dans mon formulaire sans passer par un macro
pour l'autre probleme il suffit de dire pour RONumber < Me!RONumber
mais voila je sais pas du tout comment sa marche les macro
Donc ce que je cherche c'est quelqu'un de genereux qui m'ecrive EXACTEMENT la macro a faire et que je la mte sur un bouton
toutes les astuces sont deja trouvées, il faut plus que la redaction ....
Voila c'est pas peu long mais il y aura ptet quelqu un de courageux
Merci
Antoine
Bon j'y ai passé trop de temps mais ca marche pas...je sais pas si tu es toujours la lately mais bon je recommence:
J'ai une table access qui s'appel "registre" c'est le registre des risques de mon projet.
chaque risque (les elements de ma table) est identifié par son 'type' , son 'MajorGroup' et son 'Component'
ceux sont trois champs de ma table.
j'ai egalement un champ RONumber qui est une serie numerique croissante qui represente le numero de mon risque
Dans ma table je souhaite trouve rle champ 'RBS' qui doit de la forme suivante:
j'aimerai que pour tout les champ de ma table avoir:
RBS = Type.MajorGroup.Component.X
X est un chiffre qui doit augmenter en fonction des autres risque ayant comme debut de RBS Type.MajorGroup.Component
en gros Tye est une lettre ( R ou O)
MajorGroup un chiffre entre 1 et 4
Component un chiffre entre 1 et 9
pour le premier risque qui aura
Tye = R
MajorGroup = 2
Component = 6
je veux RBS = R.2.6.1
le deuxieme RBS = R.2.6.2 par contre si MajorGroup = 1 pour un autre risque il faut RBS = R.1.6.1
J'ai crée un formulaire basée sur ma table qui montre de jolie facon totues les données
j ai réussi avec l'aide de laty a faire marcher le truc jusqu a ce que X depasse 9
je l ai fait sans faire de macro avec des formules du type
cle =[RBSType] & "." & [RBSMajorGroup] & "." & [RBSComponent]
Max =MaxDom("Right(RBS,1)";"Registre";"Left(RBS,5) = cle")+1
RBScalc =VraiFaux(EstNull([Max]);[cle] & "." & "1";[cle] & "." & [Max])
ca marche pas mal, apres je fait une marco ou je di
Me!RBS.Value= RBSCalc
mais il y a deux problemes:
ca s arret a 10
ca le fait a chaque fois que je lance ma macro donc si je rapui sur mon bouton le RBS =R.1.1.1 va devenir direct R.1.1.2 et ainsi de suite
pour le probleme de l'arret a 10 latelygeek ma donnée une astuce en faisant un truc du style:
=MaxDom(VraiFaux(Gauche(Droite([RBS];2);1)=".";Droite([RBS];1);Droite([RBS];2));"Registre";"Left([RBS];5) = [Cle]")
mais ca marche pas parceque je le fas directement dans mon formulaire sans passer par un macro
pour l'autre probleme il suffit de dire pour RONumber < Me!RONumber
mais voila je sais pas du tout comment sa marche les macro
Donc ce que je cherche c'est quelqu'un de genereux qui m'ecrive EXACTEMENT la macro a faire et que je la mte sur un bouton
toutes les astuces sont deja trouvées, il faut plus que la redaction ....
Voila c'est pas peu long mais il y aura ptet quelqu un de courageux
Merci
Antoine
A voir également:
- Structure de fractionnement Access
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
- Structure d'un rapport de stage - Guide
- Access runtime ✓ - Forum Access
- Access appdata - Guide
- Acer quick access - Forum logiciel systeme
6 réponses
Merci Lately
excuse moi mais je commence a peter un cable entre les points les virgules les points virgules...
la theorie marche tres bien mais j suis un gros nulos en visual basique et j ai trop pas le temps en ce moment de me renseigner...
excuse moi mais je commence a peter un cable entre les points les virgules les points virgules...
la theorie marche tres bien mais j suis un gros nulos en visual basique et j ai trop pas le temps en ce moment de me renseigner...
Ca devrait pas être si compliqué.
cle =[RBSType] & "." & [RBSMajorGroup] & "." & [RBSComponent]
NbCar =Iif(Left(Right([RBS],2),1)=".",1,2)
Max =MaxDom("Right(RBS,NbCar)";"Registre";"Left(RBS,5) = cle")+1
RBScalc =VraiFaux(EstNull([Max]);[cle] & "." & "1";[cle] & "." & [Max])
Et sur tu rajoutes
If Me!RBS.Value="" then Me!RBS.Value= RBSCalc
cle =[RBSType] & "." & [RBSMajorGroup] & "." & [RBSComponent]
NbCar =Iif(Left(Right([RBS],2),1)=".",1,2)
Max =MaxDom("Right(RBS,NbCar)";"Registre";"Left(RBS,5) = cle")+1
RBScalc =VraiFaux(EstNull([Max]);[cle] & "." & "1";[cle] & "." & [Max])
Et sur tu rajoutes
If Me!RBS.Value="" then Me!RBS.Value= RBSCalc
C'est le NbCar qui marche pas:
Le champs RBS est vide quand je rentre une nouvelle donnée et donc il me met toujours NbCar = 2 puisqu il y a rien
ca marche si j a ideja mon RBS mais c'est ce que je cherche...
Il faut rentrer NbCar dans le MaxDom mais ca coince, si je remplace NbCar par sa valeur dans le MaxDom il le prend pas...
Le champs RBS est vide quand je rentre une nouvelle donnée et donc il me met toujours NbCar = 2 puisqu il y a rien
ca marche si j a ideja mon RBS mais c'est ce que je cherche...
Il faut rentrer NbCar dans le MaxDom mais ca coince, si je remplace NbCar par sa valeur dans le MaxDom il le prend pas...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut lately,
Je t'ai envoyé ma base de donnée simplifiée par mail, j ai trouvé ton adress dans tes infos et je savais pas faire comment auterement
est ce que tu la recue?
en tout cas je te remerci
J'ai vu que ca fesait bien longtemps que tu travaille avec access et je me demande si tu pouvais pas m'evoyer une de tes plus belle réalisation dans le genre formulaire pour me donner des idées pour le mien , voir les possibilités sous acces.
sinon j ai encore un question simple:
est ce qu on peu inserer un sous onglet dans une seule page d'un onglet? j y arrive pas a chque fois il me la met dans mon formulaire et pas dans mon onglet
et sinon est ce qu on peut avec access une "bare d'outil' ? Une bare avec des menu (genre fichier, edition, afichage..) que je pourrais personaliser. ca serait ptet mieu que mes onglets
Merci lately
Je t'ai envoyé ma base de donnée simplifiée par mail, j ai trouvé ton adress dans tes infos et je savais pas faire comment auterement
est ce que tu la recue?
en tout cas je te remerci
J'ai vu que ca fesait bien longtemps que tu travaille avec access et je me demande si tu pouvais pas m'evoyer une de tes plus belle réalisation dans le genre formulaire pour me donner des idées pour le mien , voir les possibilités sous acces.
sinon j ai encore un question simple:
est ce qu on peu inserer un sous onglet dans une seule page d'un onglet? j y arrive pas a chque fois il me la met dans mon formulaire et pas dans mon onglet
et sinon est ce qu on peut avec access une "bare d'outil' ? Une bare avec des menu (genre fichier, edition, afichage..) que je pourrais personaliser. ca serait ptet mieu que mes onglets
Merci lately