{Access}
Résolu
Co52
Messages postés
78
Date d'inscription
Statut
Membre
Dernière intervention
-
blux Messages postés 27128 Date d'inscription Statut Modérateur Dernière intervention -
blux Messages postés 27128 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Dans un état Access 2007 peut-on dans une cellule intégrer un saut à la ligne.
Par exemple, j'ai un champs adresse et un champs ville. Je veux les mettre tous les deux dans le même champs mais sur deux lignes séparées.
Merci pour votre aide
Dans un état Access 2007 peut-on dans une cellule intégrer un saut à la ligne.
Par exemple, j'ai un champs adresse et un champs ville. Je veux les mettre tous les deux dans le même champs mais sur deux lignes séparées.
Merci pour votre aide
8 réponses
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 ?
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é
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...
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
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
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