{"id":155,"date":"2025-07-04T21:30:18","date_gmt":"2025-07-04T21:30:18","guid":{"rendered":"https:\/\/loufab.alwaysdata.net\/blogaccess\/?p=155"},"modified":"2025-07-30T21:02:43","modified_gmt":"2025-07-30T21:02:43","slug":"vba-isin-une-fonction-danalyse-de-parametres","status":"publish","type":"post","link":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/2025\/07\/04\/vba-isin-une-fonction-danalyse-de-parametres\/","title":{"rendered":"VBA : IsIn() une fonction d&rsquo;analyse de param\u00e8tres"},"content":{"rendered":"\n<p>Cette fonction d\u00e9termine si la valeur (value) pass\u00e9e appartient \u00e0 la liste (listvalue).<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"visualbasic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Public Function isIn(value As Variant, listValue As String, _\n                     Optional sep As String = \";\") As Boolean\n'------------------------------------------------------------------------------------\n' Procedure : isIn\n' Author    : Fabrice CONSTANS (MVP)\n' Date      : 10\/08\/2023\n' Purpose   : renvoi VRAI si value transmise fait partie de la liste listValue\n' Parameters: listValue est une liste d'\u00e9l\u00e9ments s\u00e9par\u00e9s par sep\n'             value peut \u00eatre un \u00e9l\u00e9ment de la liste listValue\n' Return    : Boolean\n' Copyright : \u00a9 L'int\u00e9gralit\u00e9 du code ci-dessous est la propri\u00e9t\u00e9 de son auteur (Author)\n'             \n'------------------------------------------------------------------------------------\n\n    Dim tbl As Variant\n    Dim i As Long\n    If isNullOuVide(value) Then Exit Function\n\n    tbl = Split(listValue, sep)\n    For i = 0 To UBound(tbl)\n        If tbl(i) = CStr(value) Then\n            isIn = True\n            Exit Function\n        End If\n    Next\nEnd Function<\/pre>\n\n\n\n<p>2 param\u00e8tres obligatoires :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>value <\/strong>pour la valeur \u00e0 chercher<\/li>\n\n\n\n<li><strong>listvalue <\/strong>pour la liste des valeurs \u00e0 explorer<\/li>\n<\/ul>\n\n\n\n<p>1 param\u00e8tre facultatif :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>sep <\/strong>pour le s\u00e9parateur de la liste \u00e0 explorer.<\/li>\n<\/ul>\n\n\n\n<p>On l&rsquo;utilise de cette mani\u00e8re avec le s\u00e9parateur par d\u00e9faut.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"visualbasic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">If isIn(1,\"2;5;8;6\") Then\n   Msgbox \"1 fait bien parti de la liste\nElse\n   Msgbox \"1 ne fait pas parti de la liste\"\nEndif<\/pre>\n\n\n\n<p>Ou encore en pr\u00e9cisant le s\u00e9parateur.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"visualbasic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mavar = 1\nmaliste = \"1|2|3|8|94|100|15|50\"\n\nIf isIn(mavar, maliste, \"|\") then\n   Msgbox \"1 fait bien parti de la liste\nElse\n   Msgbox \"1 ne fait pas parti de la liste\"\nEndif  <\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code> <\/code><\/pre>\n\n\n\n<p>Cette fonction peut \u00eatre modifi\u00e9e pour traiter le Null. J&rsquo;ai \u00e9galement cr\u00e9\u00e9 des variantes avec des <strong>Array <\/strong>et <strong>ParamArray <\/strong>pour le param\u00e8tre <strong>listvalue<\/strong>.<\/p>\n\n\n\n<p>Vous utilisez une autre m\u00e9thode ?<br>Vous souhaitez \u00e9changer sur ce sujet ?<br>N&rsquo;h\u00e9sitez pas \u00e0 laisser un commentaire.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cette fonction d\u00e9termine si la valeur (value) pass\u00e9e appartient \u00e0 la liste (listvalue). 2 param\u00e8tres obligatoires : 1 param\u00e8tre facultatif : On l&rsquo;utilise de cette mani\u00e8re avec le s\u00e9parateur par d\u00e9faut. Ou encore en pr\u00e9cisant le s\u00e9parateur. Cette fonction peut &hellip; <a href=\"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/2025\/07\/04\/vba-isin-une-fonction-danalyse-de-parametres\/\">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-155","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\/155","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=155"}],"version-history":[{"count":6,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/posts\/155\/revisions"}],"predecessor-version":[{"id":266,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/posts\/155\/revisions\/266"}],"wp:attachment":[{"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/media?parent=155"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/categories?post=155"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/loufab.alwaysdata.net\/blogaccess\/index.php\/wp-json\/wp\/v2\/tags?post=155"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}