{"id":40,"date":"2025-06-12T16:38:46","date_gmt":"2025-06-12T16:38:46","guid":{"rendered":"https:\/\/loufab.alwaysdata.net\/blogaccess\/?p=40"},"modified":"2025-06-12T16:38:46","modified_gmt":"2025-06-12T16:38:46","slug":"vba-formater-une-adresse-postale","status":"publish","type":"post","link":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/2025\/06\/12\/vba-formater-une-adresse-postale\/","title":{"rendered":"VBA : Formater une adresse postale"},"content":{"rendered":"\n<p>Voici un petit code qui permet de formater une adresse postale. Il est \u00e0 ins\u00e9rer en dessous des lignes d&rsquo;options (Option Compare&#8230;) d&rsquo;un module standard (pas dans un module de classe, formulaire ou \u00e9tat) :<\/p>\n\n\n\n<p>Valeur saisie : 115, impasse de la petite reine<br>Valeur format\u00e9e : 115, Impasse de la Petite Reine<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Const particules= \" de ; du ; d'; des ; l'; la ; le ; les ; en \" \n'rajouter les mots en minuscule \u00e0 ne pas mettre en majuscule \n\nPublic Function formatAdresse(strAdresse As Variant) As String \n   Dim strA As String Dim arrParticules() As String \n   Dim i As Long \n\n   If IsNull(strAdresse) Then Exit Function \n   'si c'est null on ne traite pas \n\n   If strAdresse = \"\" Then Exit Function \n   'si c'est vide on ne traite pas \n\n   arrParticules = Split(particules, \";\") \n   strA = StrConv(strAdresse, vbProperCase)\n   'toutes les premieres lettres en majuscule\n \n   For i = 0 To UBound(arrParticules) \n      strA = Replace(strA, arrParticules(i), LCase(arrParticules(i))) \n      'supprime la majuscule \n   Next \n   formatAdresse = strA \nEnd Function<\/code><\/pre>\n\n\n\n<p>On renseigne la constante avec les mots que l&rsquo;on ne veut pas mettre en majuscule.<br>1) le strconv() met toutes les 1\u00e8re lettre de chaque mot en majuscule.<br>2) la boucle For remplace les mots trouv\u00e9s qui correspondent \u00e0 ceux de la constante.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">L&rsquo;appel de la fonction<\/h2>\n\n\n\n<p>S\u00e9lectionner la zone de texte de l&rsquo;adresse que j&rsquo;ai nomm\u00e9 Adresse, l&rsquo;\u00e9v\u00e8nement Apr\u00e8s MAJ et mettre ceci :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Private Sub Adresse_AfterUpdate() \n     Me.Adresse.Value = formatAdresse(Me.Adresse.Value) \nEnd Sub<\/code><\/pre>\n\n\n\n<p>\u00ab\u00a0Adresse\u00a0\u00bb est le nom de la zone de texte. Elle doit \u00eatre remplac\u00e9e par le nom de celle que vous souhaitez traiter.<\/p>\n\n\n\n<p>Bonne utilisation !<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Voici un petit code qui permet de formater une adresse postale. Il est \u00e0 ins\u00e9rer en dessous des lignes d&rsquo;options (Option Compare&#8230;) d&rsquo;un module standard (pas dans un module de classe, formulaire ou \u00e9tat) : Valeur saisie : 115, impasse &hellip; <a href=\"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/2025\/06\/12\/vba-formater-une-adresse-postale\/\">Continuer la lecture <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[7],"class_list":["post-40","post","type-post","status-publish","format-standard","hentry","category-code-vba","tag-code-vba"],"_links":{"self":[{"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/posts\/40","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/comments?post=40"}],"version-history":[{"count":1,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/posts\/40\/revisions"}],"predecessor-version":[{"id":41,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/posts\/40\/revisions\/41"}],"wp:attachment":[{"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/media?parent=40"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/categories?post=40"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/tags?post=40"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}