Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème création dynamique

8 réponses
Avatar
doudou
Bonjour,

J'ai 100 sous formulaire qui comporte 100 zones. ces sous=20
formulaires sont regroup=E9 sur 1 formulaire principal.

Avant le regroupement je cr=E9er chaque sous formulaire=20
dynamiquement avec ces zones afin de pouvoir donner une=20
couleur diff=E9rentes =E0 chaque zone.

Mais voil=E0 ceci est tr=E8s long . Donc existe t'il un moyen=20
pour mettre =E0 jour la couleur des zones sans les recr=E9er=20
dynamiquement (createcontrol) =E0 chaque fois.

Sachant que mes zones s'appelle a,b,c,d,e,.....

L'autre solution =E9tait de placer le focus sur chaque zone=20
afin de modifier la couleur de celle-ci.=20

comment faire plus simplement ????=20

gros besoin d'aide merci ....

8 réponses

Avatar
Raymond [mvp]
Bonjour doudou.

quel est le ou les critères pour changer de couleur ?
j'espère qu'il y en a très peu.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"doudou" a écrit dans le message de
news:1789601c44948$132a2aa0$
Bonjour,

J'ai 100 sous formulaire qui comporte 100 zones. ces sous
formulaires sont regroupé sur 1 formulaire principal.

Avant le regroupement je créer chaque sous formulaire
dynamiquement avec ces zones afin de pouvoir donner une
couleur différentes à chaque zone.

Mais voilà ceci est très long . Donc existe t'il un moyen
pour mettre à jour la couleur des zones sans les recréer
dynamiquement (createcontrol) à chaque fois.

Sachant que mes zones s'appelle a,b,c,d,e,.....

L'autre solution était de placer le focus sur chaque zone
afin de modifier la couleur de celle-ci.

comment faire plus simplement ????

gros besoin d'aide merci ....
Avatar
C'est un planning donc les couleurs se situe dans une
table . Il y a 30 jour à afficher donc je passe de lettre
en lettre soit a = jour b = jour+1 ....

Cela fait donc beaucoup de couleur à gérer en fonction de
la plannification ..

les couleur se situe dans une table

critère = date et machine
on à la couleur dans le champ couleur.

soit à peu près 2500 zones en moyenne à colorier ...

comment faire pour être rapide ???

J'vais penser que mettre un dlookup dans les propriété de
la zone pourrait marcher mais marche pas ...

Merci de me répondre .

-----Message d'origine-----
Bonjour doudou.

quel est le ou les critères pour changer de couleur ?
j'espère qu'il y en a très peu.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"doudou" a écrit
dans le message de

news:1789601c44948$132a2aa0$
Bonjour,

J'ai 100 sous formulaire qui comporte 100 zones. ces sous
formulaires sont regroupé sur 1 formulaire principal.

Avant le regroupement je créer chaque sous formulaire
dynamiquement avec ces zones afin de pouvoir donner une
couleur différentes à chaque zone.

Mais voilà ceci est très long . Donc existe t'il un moyen
pour mettre à jour la couleur des zones sans les recréer
dynamiquement (createcontrol) à chaque fois.

Sachant que mes zones s'appelle a,b,c,d,e,.....

L'autre solution était de placer le focus sur chaque zone
afin de modifier la couleur de celle-ci.

comment faire plus simplement ????

gros besoin d'aide merci ....


.



Avatar
Raymond [mvp]
pour la rapidité, je ne pense pas qu'on puisse aller dans un modèle
d'efficacité.
si j'ai bien compris chaque journée d'une machine peut avoir une couleur ?
quand tu dis 2500 zones c'est quoi ?
tu as une ligne horizontale par machine ?
je ne vois pas bien l'ensemble.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


a écrit dans le message de
news:17b8d01c4494e$5503b6c0$
C'est un planning donc les couleurs se situe dans une
table . Il y a 30 jour à afficher donc je passe de lettre
en lettre soit a = jour b = jour+1 ....

Cela fait donc beaucoup de couleur à gérer en fonction de
la plannification ..

les couleur se situe dans une table

critère = date et machine
on à la couleur dans le champ couleur.

soit à peu près 2500 zones en moyenne à colorier ...

comment faire pour être rapide ???

J'vais penser que mettre un dlookup dans les propriété de
la zone pourrait marcher mais marche pas ...
Avatar
doudou
BOn je t'explique au complet...

à l'heure actuelle .

Je calcul mon planning dans un table soit une liste
d'enregistrement avec comme zone :

La machine
Le jour
la couleur
l'of
la phase

ensuite c'est ici que commence le travaille.

Je créer un sous formulaire par machine et ceci en
dynamique soit :

60 zones pour 2 mois Chaque zone ayant la couleur du
travail quelle doit faire cette journée là .

donc je créer 60 zone avec à chaque fois le forecolor qui
correspond au jour .

Je fait toute ma liste de machine soit entre 50 et 200
machine.

Puis tjs en dynamique je vient mettre mes 50 à 200 sous
formulaire dans un formulaire principal toujours en
dynamique ...

Et ça c'est long .

Donc les machine sont en horizontale et un sous
formulaire par machine.

Mon idée c'est que les sous formulaire pourrait déjà être
créer et je pourrait juste changer les couleur des zones
sur des formulaire "vierge" donc ce qui me gagnerait tout
le temps de création ....

Merci beaucoup pour tes réponses ...

Ps : celà marche aujourd'hui mais il faut compter 15
minutes pour 50 machines . Tu voit donc mon dilème ..
-----Message d'origine-----
pour la rapidité, je ne pense pas qu'on puisse aller
dans un modèle

d'efficacité.
si j'ai bien compris chaque journée d'une machine peut
avoir une couleur ?

quand tu dis 2500 zones c'est quoi ?
tu as une ligne horizontale par machine ?
je ne vois pas bien l'ensemble.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


a écrit dans le
message de

news:17b8d01c4494e$5503b6c0$
C'est un planning donc les couleurs se situe dans une
table . Il y a 30 jour à afficher donc je passe de lettre
en lettre soit a = jour b = jour+1 ....

Cela fait donc beaucoup de couleur à gérer en fonction de
la plannification ..

les couleur se situe dans une table

critère = date et machine
on à la couleur dans le champ couleur.

soit à peu près 2500 zones en moyenne à colorier ...

comment faire pour être rapide ???

J'vais penser que mettre un dlookup dans les propriété de
la zone pourrait marcher mais marche pas ...


.



Avatar
Raymond [mvp]
Il me semble difficile de préconiser quoi que ce soit car ce bout de
problème est certainement inclus dans toute ton appli et qu'il a des tenants
et des aboutissants un peu partout. Ton idée de partir sur des
sous-formulaires vierges pour remplacer la création, devrait ne demander que
quelques modifs mineures tout en conservant l'organisation. Supprimer
ensuite les sous-formulaires va te demander un minimum d'étude et de
reflexion et sans avoir l'application devant soi me parait difficile.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"doudou" a écrit dans le message de
news:1790c01c44952$37e7caa0$
BOn je t'explique au complet...

à l'heure actuelle .

Je calcul mon planning dans un table soit une liste
d'enregistrement avec comme zone :

La machine
Le jour
la couleur
l'of
la phase

ensuite c'est ici que commence le travaille.

Je créer un sous formulaire par machine et ceci en
dynamique soit :

60 zones pour 2 mois Chaque zone ayant la couleur du
travail quelle doit faire cette journée là .

donc je créer 60 zone avec à chaque fois le forecolor qui
correspond au jour .

Je fait toute ma liste de machine soit entre 50 et 200
machine.

Puis tjs en dynamique je vient mettre mes 50 à 200 sous
formulaire dans un formulaire principal toujours en
dynamique ...

Et ça c'est long .

Donc les machine sont en horizontale et un sous
formulaire par machine.

Mon idée c'est que les sous formulaire pourrait déjà être
créer et je pourrait juste changer les couleur des zones
sur des formulaire "vierge" donc ce qui me gagnerait tout
le temps de création ....

Merci beaucoup pour tes réponses ...

Ps : celà marche aujourd'hui mais il faut compter 15
minutes pour 50 machines . Tu voit donc mon dilème ..
Avatar
doudou
Oki merci pour tes conseil juste une petite chose quand
même :

J'ai regardé pour comment je pouvait le faire mais j'ai
une lacune en programmation .

J'obtient les nom de la zone par une fonction : soit la
zone à changer de couleur

retour lettre = "A" ou "B" ou ....

set zone = retour_lettre

Mais après je doit faire un

docmd.gotocontrol zone
screen.activecontrol.forecolor = 255

est ce que je ne pourrait pas faire autrement car
directement zone.forecolor ne marche pas ..

Merci d'avance

la seule solution
-----Message d'origine-----
Il me semble difficile de préconiser quoi que ce soit
car ce bout de

problème est certainement inclus dans toute ton appli et
qu'il a des tenants

et des aboutissants un peu partout. Ton idée de partir
sur des

sous-formulaires vierges pour remplacer la création,
devrait ne demander que

quelques modifs mineures tout en conservant
l'organisation. Supprimer

ensuite les sous-formulaires va te demander un minimum
d'étude et de

reflexion et sans avoir l'application devant soi me
parait difficile.


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"doudou" a écrit
dans le message de

news:1790c01c44952$37e7caa0$
BOn je t'explique au complet...

à l'heure actuelle .

Je calcul mon planning dans un table soit une liste
d'enregistrement avec comme zone :

La machine
Le jour
la couleur
l'of
la phase

ensuite c'est ici que commence le travaille.

Je créer un sous formulaire par machine et ceci en
dynamique soit :

60 zones pour 2 mois Chaque zone ayant la couleur du
travail quelle doit faire cette journée là .

donc je créer 60 zone avec à chaque fois le forecolor qui
correspond au jour .

Je fait toute ma liste de machine soit entre 50 et 200
machine.

Puis tjs en dynamique je vient mettre mes 50 à 200 sous
formulaire dans un formulaire principal toujours en
dynamique ...

Et ça c'est long .

Donc les machine sont en horizontale et un sous
formulaire par machine.

Mon idée c'est que les sous formulaire pourrait déjà être
créer et je pourrait juste changer les couleur des zones
sur des formulaire "vierge" donc ce qui me gagnerait tout
le temps de création ....

Merci beaucoup pour tes réponses ...

Ps : celà marche aujourd'hui mais il faut compter 15
minutes pour 50 machines . Tu voit donc mon dilème ..


.



Avatar
Raymond [mvp]
le forecolor sur un contrôle même s'il n'a pas le focus fonctionne.
tu dois avoir un petit truc dans ton enchainement de fonctions.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"doudou" a écrit dans le message de
news:1788e01c4495f$f7f8b950$
Oki merci pour tes conseil juste une petite chose quand
même :

J'ai regardé pour comment je pouvait le faire mais j'ai
une lacune en programmation .

J'obtient les nom de la zone par une fonction : soit la
zone à changer de couleur

retour lettre = "A" ou "B" ou ....

set zone = retour_lettre

Mais après je doit faire un

docmd.gotocontrol zone
screen.activecontrol.forecolor = 255

est ce que je ne pourrait pas faire autrement car
directement zone.forecolor ne marche pas ..

Merci d'avance

la seule solution
Avatar
doudou
Merci bien pour toutes tes réponses
-----Message d'origine-----
le forecolor sur un contrôle même s'il n'a pas le focus
fonctionne.

tu dois avoir un petit truc dans ton enchainement de
fonctions.


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"doudou" a écrit
dans le message de

news:1788e01c4495f$f7f8b950$
Oki merci pour tes conseil juste une petite chose quand
même :

J'ai regardé pour comment je pouvait le faire mais j'ai
une lacune en programmation .

J'obtient les nom de la zone par une fonction : soit la
zone à changer de couleur

retour lettre = "A" ou "B" ou ....

set zone = retour_lettre

Mais après je doit faire un

docmd.gotocontrol zone
screen.activecontrol.forecolor = 255

est ce que je ne pourrait pas faire autrement car
directement zone.forecolor ne marche pas ..

Merci d'avance

la seule solution


.