{Access}
Résolu/Fermé
Co52
Messages postés
78
Date d'inscription
dimanche 1 novembre 2009
Statut
Membre
Dernière intervention
8 octobre 2016
-
26 nov. 2009 à 17:48
blux Messages postés 26532 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 décembre 2024 - 26 nov. 2009 à 20:41
blux Messages postés 26532 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 décembre 2024 - 26 nov. 2009 à 20:41
8 réponses
blux
Messages postés
26532
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 décembre 2024
3 317
26 nov. 2009 à 18:40
26 nov. 2009 à 18:40
Salut,
c'est sûrement possible... avec un peu de code dans l'évènement 'au formatage'.
Connais-tu le VBA ?
c'est sûrement possible... avec un peu de code dans l'évènement 'au formatage'.
Connais-tu le VBA ?
Co52
Messages postés
78
Date d'inscription
dimanche 1 novembre 2009
Statut
Membre
Dernière intervention
8 octobre 2016
3
26 nov. 2009 à 18:44
26 nov. 2009 à 18:44
salut,
non ou du moins tres peu, j'arrive juste à bidouiller les noms et autres quand on me donne quelque chose de déjà programmé
non ou du moins tres peu, j'arrive juste à bidouiller les noms et autres quand on me donne quelque chose de déjà programmé
blux
Messages postés
26532
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 décembre 2024
3 317
26 nov. 2009 à 19:05
26 nov. 2009 à 19:05
Je te propose un truc, tu essayes et on en recause.
pré-requis :
- une table qui contient (entre autres) les champs : adresse, ville
- un état basé sur cette table
actions sur l'état, en mode création :
- éditer l'état, dans sa zone 'détail', rajouter un contrôle de type 'zone de texte' (assez grand), le nommer 'ad_total', par exemple
- toujours dans l'état, afficher les propriétés de la zone détail (par double-clic sur la barre 'détail') et aller sur l'onglet 'évènement', et sur la ligne 'au formatage', sélectionner '[Procédure événementielle]'. Doit s'ouvrir une fenêtre de code. Il suffit d'y taper la ligne suivante :
ad_total = adresse & vbCrLf & ville
et c'est tout.
explications :
on va rechercher dans l'état les valeurs des zones adresse et ville et on va les concaténer en ajoutant un saut de ligne (variable VBA nommée vbCrLf), puis mettre le résultat dans la zone ad_total créée précédemment.
Bien entendu, les noms de variable sont à remplacer avec les tiens...
pré-requis :
- une table qui contient (entre autres) les champs : adresse, ville
- un état basé sur cette table
actions sur l'état, en mode création :
- éditer l'état, dans sa zone 'détail', rajouter un contrôle de type 'zone de texte' (assez grand), le nommer 'ad_total', par exemple
- toujours dans l'état, afficher les propriétés de la zone détail (par double-clic sur la barre 'détail') et aller sur l'onglet 'évènement', et sur la ligne 'au formatage', sélectionner '[Procédure événementielle]'. Doit s'ouvrir une fenêtre de code. Il suffit d'y taper la ligne suivante :
ad_total = adresse & vbCrLf & ville
et c'est tout.
explications :
on va rechercher dans l'état les valeurs des zones adresse et ville et on va les concaténer en ajoutant un saut de ligne (variable VBA nommée vbCrLf), puis mettre le résultat dans la zone ad_total créée précédemment.
Bien entendu, les noms de variable sont à remplacer avec les tiens...
Co52
Messages postés
78
Date d'inscription
dimanche 1 novembre 2009
Statut
Membre
Dernière intervention
8 octobre 2016
3
26 nov. 2009 à 19:05
26 nov. 2009 à 19:05
Juste pour donner quelques infos complémentaires. j'ai donc 2 champs [Adresse] et [Ville].
Je ne veux créer qu'un champ avec les fonctions VraiFaux suivantes imbriquées
VraiFaux ( [Adresse] est null ; VraiFaux ( [Ville] est null ; ""; [Ville] ) ; VraiFaux ( [Ville] est null ; [Adresse] ; [Adresse] &" " & [Ville] ) )
et en fait je veux remplacer ce qui est en gras par un retour à la ligne
Merci du coup de pouce
Je ne veux créer qu'un champ avec les fonctions VraiFaux suivantes imbriquées
VraiFaux ( [Adresse] est null ; VraiFaux ( [Ville] est null ; ""; [Ville] ) ; VraiFaux ( [Ville] est null ; [Adresse] ; [Adresse] &" " & [Ville] ) )
et en fait je veux remplacer ce qui est en gras par un retour à la ligne
Merci du coup de pouce
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
blux
Messages postés
26532
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 décembre 2024
3 317
26 nov. 2009 à 19:14
26 nov. 2009 à 19:14
Un truc comme ça (ou dans un ordre différent, j'ai pas testé) :
If isnull(adresse) then if isnull(ville) then ad_total = "" else ad_total = ville end if else if isnull(ville) then ad_total = adresse else ad_total = adresse & vbcrlf & ville end if
Co52
Messages postés
78
Date d'inscription
dimanche 1 novembre 2009
Statut
Membre
Dernière intervention
8 octobre 2016
3
26 nov. 2009 à 19:29
26 nov. 2009 à 19:29
j'essaye et je te tiens au courant. En tout cas merci d'y avoir passé un peu de temps
Co52
Messages postés
78
Date d'inscription
dimanche 1 novembre 2009
Statut
Membre
Dernière intervention
8 octobre 2016
3
26 nov. 2009 à 19:44
26 nov. 2009 à 19:44
Impeccable, ça marche, il manque juste un dernier END IF à la fin.
Je ne connais pas les codes visual basic mais j'ai fait un peu de programmation en Basic il a plus de 25 ans et j'ai quelque restes.
Il faudrait que je prenne un peu de temps pour apprendre le VBA, c'est juste une question de facilité et de fainéantise parce que j'ai appris à utiliser Access avec utilisation des macros mais je me rends bien compte qu'on peut en faire un peu plus avec VBA.
Merci beaucoup
Je ne connais pas les codes visual basic mais j'ai fait un peu de programmation en Basic il a plus de 25 ans et j'ai quelque restes.
Il faudrait que je prenne un peu de temps pour apprendre le VBA, c'est juste une question de facilité et de fainéantise parce que j'ai appris à utiliser Access avec utilisation des macros mais je me rends bien compte qu'on peut en faire un peu plus avec VBA.
Merci beaucoup
blux
Messages postés
26532
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
18 décembre 2024
3 317
26 nov. 2009 à 20:41
26 nov. 2009 à 20:41
Fallait bien que j'oublie quelque chose, aussi :-)