{"id":11785,"date":"2024-04-15T06:56:56","date_gmt":"2024-04-15T04:56:56","guid":{"rendered":"https:\/\/www.auditsi.eu\/?p=11785"},"modified":"2023-10-29T23:03:24","modified_gmt":"2023-10-29T22:03:24","slug":"excel-collecter-des-donnees-juridiques-sur-les-entreprises-avec-lapi-sirene-1ere-partie-base-siren-entreprises","status":"publish","type":"post","link":"https:\/\/www.auditsi.eu\/?p=11785","title":{"rendered":"Excel : collecter des donn\u00e9es juridiques sur les entreprises avec l&#8217;API SIRENE &#8211; 1\u00e8re partie : base SIREN (entreprises)"},"content":{"rendered":"<p style=\"text-align: justify;\">Dans un monde \u00e9conomique aussi mouvant o\u00f9 les crises de succ\u00e8dent aussi rapidement, les entreprises ont besoin d\u2019<strong>obtenir et de maintenir des informations<\/strong> financi\u00e8res et juridiques, fiables et en permanence \u00e0 jour, <strong>sur leurs partenaires<\/strong> (clients, fournisseurs\u2026). Que ce soit pour cr\u00e9er ou mettre \u00e0 jour des fiches tiers (outil strat\u00e9gique dans le cadre de la d\u00e9mat\u00e9rialisation de la facturation, documentation de la conformit\u00e9 Sapin 2), accorder du cr\u00e9dit \u00e0 des clients actuels ou nouveaux (\u00e9valuation du risque de d\u00e9faillance, solvabilit\u00e9\u2026).<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-11935\" src=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-SIREN-XL.png\" alt=\"API SIRENE SIREN XL\" width=\"1125\" height=\"467\" srcset=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-SIREN-XL.png 1125w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-SIREN-XL-300x125.png 300w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-SIREN-XL-1024x425.png 1024w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-SIREN-XL-768x319.png 768w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-SIREN-XL-730x303.png 730w\" sizes=\"auto, (max-width: 1125px) 100vw, 1125px\" \/><\/p>\n<p style=\"text-align: justify;\">Le r\u00e9pertoire SIRENE (Syst\u00e8me Informatique pour le R\u00e9pertoire des ENtreprises et des Etablissements) dont la gestion est confi\u00e9e \u00e0 l\u2019INSEE permet de t\u00e9l\u00e9charger ses donn\u00e9es notamment sous forme de fichier texte. L\u2019INSEE est ainsi charg\u00e9 d\u2019<strong>identifier les entreprises au sens large<\/strong> et plus pr\u00e9cis\u00e9ment les entrepreneurs individuels, les personnes morales soumises au droit commercial, les institutions et services de l\u2019\u00c9tat et les collectivit\u00e9s territoriales, certaines associations. Toutes les mises \u00e0 jour d\u2019entreprises et d\u2019\u00e9tablissements (cr\u00e9ations, modifications, cessations) enregistr\u00e9s dans SIRENE proviennent des informations d\u00e9claratives des entreprises aupr\u00e8s du Guichet Unique et de certains Centres de Formalit\u00e9s des Entreprises (CFE).<\/p>\n<p style=\"text-align: justify;\">Le r\u00e9pertoire SIRENE est <strong>interrogeable par API<\/strong> (<em>Application Programming Interface<\/em> ou interface de programmation applicative) \u00e0 partir d&#8217;un <strong>num\u00e9ro SIREN (entreprise ou unit\u00e9 l\u00e9gale)<\/strong> ou d&#8217;un <strong>SIRET (\u00e9tablissement d&#8217;une entreprise)<\/strong>.<\/p>\n<p style=\"text-align: justify;\">Une API assure l\u2019<strong>interface entre deux syst\u00e8mes<\/strong>. Par exemple, les logiciels de paye t\u00e9l\u00e9transmettent les D\u00e9clarations Sociales Nominatives (DSN) vers les serveurs de l\u2019\u00c9tat par l\u2019interm\u00e9diaire d\u2019une API. Le fonctionnement d\u2019une API est simple. Un logiciel envoie une&nbsp;<strong>requ\u00eate \u00e0 un site internet<\/strong>&nbsp;ou \u00e0 un autre logiciel par le biais de son API. Le site internet ex\u00e9cute la requ\u00eate, interroge ses bases de donn\u00e9es et renvoie le r\u00e9sultat au logiciel, qui int\u00e8gre les donn\u00e9es re\u00e7ues dans son processus de calcul. Les API assurent ainsi l\u2019interaction entre des logiciels d\u2019\u00e9diteurs diff\u00e9rents.<\/p>\n<p style=\"text-align: justify;\"><span style=\"color: #993366;\"><em><strong>&gt;&gt;&gt;<\/strong><\/em><\/span> Pour aller plus loin : Le principe de la diffusion en ligne avec autorisation de rediffusion gratuite (ou&nbsp;<em>open data<\/em>) des donn\u00e9es du registre national du commerce et des soci\u00e9t\u00e9s (RNCS, fourni par l\u2019INPI) et du <strong>fichier SIRENE<\/strong> (fourni par l\u2019INSEE) a \u00e9t\u00e9 act\u00e9 par la loi Macron du 6 ao\u00fbt 2015. Le site Data Inpi, lanc\u00e9 en d\u00e9cembre 2019, a mis en oeuvre la diffusion de ces donn\u00e9es. L\u2019INPI propose d\u00e9sormais une <strong>API<\/strong> ainsi qu\u2019un <strong>FTP<\/strong>. A partir de ces moyens de diffusion, tout op\u00e9rateur priv\u00e9 a la possibilit\u00e9 d\u2019int\u00e9grer ces donn\u00e9es dans ses propres produits, commerciaux ou gratuits, et de les rediffuser \u00e0 sa guise. Plusieurs acteurs priv\u00e9s ont commenc\u00e9 \u00e0 occuper ce nouveau champ des possibles, \u00e0 l\u2019image de <a title=\"T\u00e9l\u00e9charger gratuitement les documents juridiques et les comptes des soci\u00e9t\u00e9s avec le site Pappers.fr\" href=\"https:\/\/www.auditsi.eu\/?p=9178\">Pappers<\/a>&nbsp;ou de <a href=\"https:\/\/www.auditsi.eu\/?p=9421\">Soci\u00e9t\u00e9.Ninja<\/a>.<\/p>\n<p style=\"text-align: justify;\">Le pr\u00e9sent article propose au lecteur de <strong>cr\u00e9er un classeur Excel dot\u00e9 d&#8217;un code VBA qui interroge le r\u00e9pertoire SIRENE<\/strong>. Il sera compos\u00e9 de <strong>deux parties<\/strong> :<\/p>\n<ul>\n<li>Interrogation de la base entreprises (SIREN) ;<\/li>\n<li><a href=\"https:\/\/www.auditsi.eu\/?p=11941\">Interrogation de la base \u00e9tablissements (SIRET)<\/a> (expos\u00e9e dans un autre article \u00e0 suivre).<\/li>\n<\/ul>\n<p style=\"text-align: justify;\"><strong><em>Pr\u00e9requis : obtention d&#8217;une clef d&#8217;identification :<\/em><\/strong><\/p>\n<p style=\"text-align: justify;\">Pour utiliser l&#8217;API SIRENE, il est n\u00e9cessaire d&#8217;obtenir gratuitement une <strong>clef d&#8217;identification (token)<\/strong> \u00e0 ins\u00e9rer dans le code VBA apr\u00e8s inscription (cr\u00e9ation d&#8217;un compte) sur le <a href=\"https:\/\/api.insee.fr\/\" target=\"_blank\" rel=\"noopener\">site des API SIRENE<\/a> :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-11786\" src=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-TOKEN.png\" alt=\"API SIRENE TOKEN\" width=\"781\" height=\"1072\" srcset=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-TOKEN.png 781w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-TOKEN-219x300.png 219w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-TOKEN-746x1024.png 746w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-TOKEN-768x1054.png 768w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-TOKEN-730x1002.png 730w\" sizes=\"auto, (max-width: 781px) 100vw, 781px\" \/><\/p>\n<p style=\"text-align: justify;\">Une fois l&#8217;inscription valid\u00e9e, cliquer sur le bouton Montrer les clefs puis copier la cha\u00eene affich\u00e9e dans la zone Jeton d&#8217;acc\u00e8s. La clef a une dur\u00e9e de vie limit\u00e9e. Pour en g\u00e9n\u00e9rer une nouvelle, cliquer sur Reg\u00e9n\u00e9rer. Il faudra la r\u00e9ins\u00e9rer dans le code VBA \u00e0 la place de l&#8217;ancienne.<\/p>\n<p style=\"text-align: justify;\">Le site internet SIRENE fournit une page d&#8217;<a href=\"https:\/\/api.insee.fr\/catalogue\/site\/themes\/wso2\/subthemes\/insee\/pages\/help.jag\" target=\"_blank\" rel=\"noopener\">aide pour la cr\u00e9ation du token<\/a>.<\/p>\n<p style=\"text-align: justify;\"><strong><em>Conditions d&#8217;utilisation de l&#8217;API SIRENE :<\/em><\/strong><\/p>\n<p style=\"text-align: justify;\">Les donn\u00e9es SIRENE sont mises \u00e0 jour quotidiennement dans la nuit et int\u00e8grent les mises \u00e0 jour de la veille.<\/p>\n<p style=\"text-align: justify;\">L&#8217;usage d&#8217;API SIRENE est soumis \u00e0 une <strong>limite de 30 interrogations par minute<\/strong>. L&#8217;INSEE se r\u00e9serve le droit de changer cette limite en cas de n\u00e9cessit\u00e9.<\/p>\n<p style=\"text-align: justify;\">L\u2019INSEE s&#8217;efforce de garantir la disponibilit\u00e9 de l\u2019API 99,5 % du temps mensuel appr\u00e9ci\u00e9 au terme de chaque mois.<\/p>\n<p style=\"text-align: justify;\">Conditions &amp; limitations d&#8217;utilisation du service SIRENE : <a href=\"https:\/\/api.insee.fr\/catalogue\/site\/themes\/wso2\/subthemes\/insee\/pages\/item-info.jag?name=Sirene&amp;version=V3&amp;provider=insee\" target=\"_blank\" rel=\"noopener\">cliquer ici<\/a>.<\/p>\n<p style=\"text-align: justify;\"><em><strong>Le code VBA :<\/strong><\/em><\/p>\n<p style=\"text-align: justify;\">L&#8217;<strong>exploitation de la base SIRENE<\/strong> se passe en deux temps : dans un premier temps, une <strong>requ\u00eate est \u00e9mise vers l&#8217;API<\/strong> et cette derni\u00e8re retourne une r\u00e9ponse et dans un second temps, il faut <strong>extraire les donn\u00e9es utiles<\/strong> de la r\u00e9ponse re\u00e7ue du serveur.<\/p>\n<p style=\"text-align: justify;\">Le code VBA comprend plusieurs fonctions pour r\u00e9pondre \u00e0 ce processus :<\/p>\n<ul>\n<li>Fonctions de validation des num\u00e9ros <em>SIREN (V\u00e9rifieClefLuhn)<\/em> et <em>V\u00e9rifieClefLuhn_SIREN(Cha\u00eene As String)<\/em> : d\u00e9j\u00e0 pr\u00e9sent\u00e9es dans l&#8217;article <a href=\"https:\/\/www.auditsi.eu\/?p=11607\">EXCEL : V\u00e9rifier la validit\u00e9 d\u2019un num\u00e9ro SIREN<\/a><\/li>\n<li>Fonction d&#8217;interrogation de la base de donn\u00e9es (requ\u00eate API) : <em>Interrogation_API_SIRENE(SIREN_ou_SIRET As String, Clef_API_SIRENE As String)<\/em><\/li>\n<li>Fonction d&#8217;exploitation du r\u00e9sultat de la requ\u00eate : <em>Extraction_Champ_API_SIRENE(R\u00e9ponse_Requ\u00eate_SIRENE As Variant, NomChamp As String)<\/em><\/li>\n<\/ul>\n<p style=\"text-align: justify;\">La fonction <em>Interrogation_API_SIRENE(SIREN_ou_SIRET As String, Clef_API_SIRENE As String)<\/em> se charge d&#8217;<strong>envoyer la requ\u00eate au serveur de l&#8217;INSEE<\/strong> :<\/p>\n<ul>\n<li>Envoi de la requ\u00eate <em>.Open &#8220;GET&#8221;, URL_API_SIRENE &amp; Type_Num\u00e9ro &amp; &#8220;\/&#8221; &amp; SIREN_ou_SIRET, False<\/em> au serveur SIRENE (<em>https:\/\/api.insee.fr\/entreprises\/sirene\/V3\/<\/em>) avec authentification \u00e0 l&#8217;aide de la clef (token) : <em>.SetRequestHeader &#8220;Authorization&#8221;, &#8220;Bearer &#8221; &amp; Clef_API_SIRENE<\/em><\/li>\n<li>R\u00e9ception de la r\u00e9ponse du serveur (<em>R\u00e9ponse_Requ\u00eate = .ResponseText<\/em>) et de son statut (<em>Statut_Requ\u00eate = .Status<\/em>) en erreur ou non (= 200)<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">Codes retour requ\u00eate (<em>.Status<\/em>) :<\/p>\n<table class=\"fullwidth response-messages\">\n<tbody class=\"operation-status\">\n<tr>\n<th data-sw-translate=\"\">Code de statut HTTP<\/th>\n<th data-sw-translate=\"\">Raison<\/th>\n<\/tr>\n<tr>\n<td>200<\/td>\n<td>Ok, la requ\u00eate a \u00e9t\u00e9 correctement ex\u00e9cut\u00e9e et a retourn\u00e9 un message exploitable.<\/td>\n<\/tr>\n<tr>\n<td class=\"code\" width=\"15%\">400<\/td>\n<td class=\"markdown\">Nombre incorrect de param\u00e8tres ou les param\u00e8tres sont mal format\u00e9s<\/td>\n<\/tr>\n<tr>\n<td class=\"code\" width=\"15%\">401<\/td>\n<td class=\"markdown\">Jeton d&#8217;acc\u00e8s manquant ou invalide<\/td>\n<\/tr>\n<tr>\n<td class=\"code\" width=\"15%\">404<\/td>\n<td class=\"markdown\">Entreprise non trouv\u00e9e dans la base Sirene (si le param\u00e8tre date n&#8217;a pas \u00e9t\u00e9 utilis\u00e9, cela peut signifier que le num\u00e9ro de 9 chiffres ne correspond pas \u00e0 un Siren pr\u00e9sent dans la base ; si le param\u00e8tre a \u00e9t\u00e9 utilis\u00e9, le Siren peut exister mais la date de cr\u00e9ation est post\u00e9rieure au param\u00e8tre date)<\/td>\n<\/tr>\n<tr>\n<td class=\"code\" width=\"15%\">406<\/td>\n<td class=\"markdown\">Le param\u00e8tre &#8216;Accept&#8217; de l&#8217;en-t\u00eate HTTP contient une valeur non pr\u00e9vue<\/td>\n<\/tr>\n<tr>\n<td class=\"code\" width=\"15%\">414<\/td>\n<td class=\"markdown\">Requ\u00eate trop longue<\/td>\n<\/tr>\n<tr>\n<td class=\"code\" width=\"15%\">429<\/td>\n<td class=\"markdown\">Quota d&#8217;interrogations de l&#8217;API d\u00e9pass\u00e9<\/td>\n<\/tr>\n<tr>\n<td class=\"code\" width=\"15%\">500<\/td>\n<td class=\"markdown\">Erreur interne du serveur<\/td>\n<\/tr>\n<tr>\n<td class=\"code\" width=\"15%\">503<\/td>\n<td class=\"markdown\">Service indisponible<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: justify;\">La fonction&nbsp;<em>Extraction_Champ_API_SIRENE(R\u00e9ponse_Requ\u00eate_SIRENE As Variant, NomChamp As String)<\/em> permet d&#8217;isoler les champs de donn\u00e9es figurant dans la r\u00e9ponse du serveur.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"visualbasic\">'-----------------------------------------------------------------------------------------------------------------------\r\n'  Collecte de donn\u00e9es d'entreprises \u00e0 l'aide de l'API SIRENE\r\n'  Ecrit par Beno\u00eet RIVIERE, v1 10\/2023\r\n'\r\n'  Plus d'infos : https:\/\/www.auditsi.eu\/?p=11785\r\n'-----------------------------------------------------------------------------------------------------------------------\r\n\r\n\r\nOption Explicit\r\n\r\n\r\n'D\u00e9claration des constantes\r\n'---URL de l'API Sirene\r\nConst URL_API_SIRENE = \"https:\/\/api.insee.fr\/entreprises\/sirene\/V3\/\"\r\n\r\n\r\n'-----------------------------------------------------------------------------------------------------------------------\r\n' Contr\u00f4le de la validit\u00e9 d'un num\u00e9ro SIREN\r\n' Infos : https:\/\/www.auditsi.eu\/?p=11607\r\n'-----------------------------------------------------------------------------------------------------------------------\r\n'Algorithme de Luhn applicable aux num\u00e9ros SIREN et SIRET\r\n'-----------------------------------------------------------------------------------------------------------------------\r\n\r\n'V\u00e9rifie la clef de contr\u00f4le d'une cha\u00eene (qui contient la clef) selon l'algorithme de Luhn\r\nPrivate Function V\u00e9rifieClefLuhn(Cha\u00eene As String) As Boolean\r\n    'D\u00e9claration des variables\r\n    Dim LongueurCha\u00eene As Integer\r\n    Dim i As Integer\r\n    Dim Position As Integer\r\n    Dim Chiffre As Integer\r\n    Dim Addition As Integer\r\n        \r\n    'Calcule le nombre de caract\u00e8res de la Cha\u00eene\r\n    LongueurCha\u00eene = Len(Cha\u00eene)\r\n    \r\n    Addition = 0\r\n    Position = 0\r\n    \r\n    'Parcourt chaque chiffre de la variable Cha\u00eene de droite \u00e0 gauche\r\n    For i = LongueurCha\u00eene To 1 Step -1\r\n        Position = Position + 1\r\n        \r\n        'Lit le chiffre en cours (position i dans la Cha\u00eene)\r\n        Chiffre = CInt(Mid(Cha\u00eene, i, 1))\r\n        \r\n        'Si la position est paire (\u00e0 partir de la droite), multiplier par 2\r\n        If Position Mod 2 = 0 Then 'si le reste de la division i\/2= 0 -&gt; position paire sinon impaire\r\n            Chiffre = Chiffre * 2\r\n            'Si le r\u00e9sultat de la multiplication est sup\u00e9rieur \u00e0 9, soustraire 9\r\n            If Chiffre &gt; 9 Then\r\n                Chiffre = Chiffre - 9\r\n            End If\r\n        End If\r\n        \r\n        'Additionne les chiffres au fur et \u00e0 mesure de l'ex\u00e9cution de la boucle (impairs*2 + pairs)\r\n        Addition = Addition + Chiffre\r\n    Next i\r\n    \r\n    'Calcule la clef de contr\u00f4le\r\n    V\u00e9rifieClefLuhn = (Addition Mod 10) = 0\r\nEnd Function\r\n\r\n'V\u00e9rifie la validit\u00e9 de la clef contenue dans un num\u00e9ro SIREN\r\n'   Valeur de retour :\r\n'       - VRAI : clef correcte\r\n'       - FAUX : clef erronn\u00e9e ou longueur du num\u00e9ro SIREN fourni &lt;&gt; 9\r\nFunction V\u00e9rifieClefLuhn_SIREN(Cha\u00eene As String) As Boolean\r\n    Select Case Len(Cha\u00eene)\r\n        Case 9:\r\n            V\u00e9rifieClefLuhn_SIREN = V\u00e9rifieClefLuhn(Cha\u00eene)\r\n        Case Else:\r\n            V\u00e9rifieClefLuhn_SIREN = False\r\n    End Select\r\nEnd Function\r\n\r\n\r\n'-----------------------------------------------------------------------------------------------------------------------\r\n'Interrogation et collecte des donn\u00e9es de l'API SIRENE\r\nFunction Interrogation_API_SIRENE(SIREN_ou_SIRET As String, Clef_API_SIRENE As String) As String\r\n    Dim Type_Num\u00e9ro As String\r\n    Dim Requ\u00eate_XMLHTTP As Object\r\n    Dim R\u00e9ponse_Requ\u00eate As Variant\r\n    Dim Statut_Requ\u00eate As Integer\r\n    Dim Message_Erreur As String\r\n    \r\n    'Test de la validit\u00e9 du n\u00b0 SIREN ou du n\u00b0 SIRET\r\n    '(en cas de non conformit\u00e9 : retour d'un message d'erreur)\r\n    Select Case Len(SIREN_ou_SIRET)\r\n        Case 9:\r\n            If V\u00e9rifieClefLuhn_SIREN(SIREN_ou_SIRET) = False Then\r\n                Interrogation_API_SIRENE = \"Erreur 999. Num\u00e9ro SIREN \" &amp; SIREN_ou_SIRET &amp; \" non conforme\"\r\n                Exit Function\r\n            End If\r\n            Type_Num\u00e9ro = \"siren\"\r\n        Case Else:\r\n            Interrogation_API_SIRENE = \"Erreur 997. Longueur num\u00e9ro SIREN \/ SIRET \" &amp; SIREN_ou_SIRET &amp; \" non conforme\"\r\n            Exit Function\r\n    End Select\r\n        \r\n    'Cr\u00e9ation de l'objet Requ\u00eate_XMLHTTP pour effectuer la requ\u00eate sur l'API SIRENE\r\n    Set Requ\u00eate_XMLHTTP = CreateObject(\"MSXML2.ServerXMLHTTP.6.0\")\r\n    \r\n    'Cr\u00e9ation et envoi de la requ\u00eate\r\n    With Requ\u00eate_XMLHTTP\r\n        'Envoi de la requ\u00eate GET \u00e0 l'API SIRENE\r\n        .Open \"GET\", URL_API_SIRENE &amp; Type_Num\u00e9ro &amp; \"\/\" &amp; SIREN_ou_SIRET, False\r\n        'Authentification \u00e0 l'aide de la clef (token)\r\n        .SetRequestHeader \"Authorization\", \"Bearer \" &amp; Clef_API_SIRENE\r\n        'Envoi de la requ\u00eate\r\n        .Send\r\n        'R\u00e9ception de la r\u00e9ponse\r\n        R\u00e9ponse_Requ\u00eate = .ResponseText\r\n        'Statut de la requ\u00eate\r\n        Statut_Requ\u00eate = .Status '200 = Ok sinon statut en erreur\r\n    End With\r\n    \r\n    'Lib\u00e8re l'objet Requ\u00eate_XMLHTTP\r\n    Set Requ\u00eate_XMLHTTP = Nothing\r\n    \r\n    'En fonction du statut de la r\u00e9ponse...\r\n    Select Case Statut_Requ\u00eate\r\n        Case 200:  '...statut Ok -&gt; retourne le r\u00e9sultat de la requ\u00eate\r\n            'Remplace les donn\u00e9es Null par \"\" (cha\u00eene vide)\r\n            R\u00e9ponse_Requ\u00eate = Replace(R\u00e9ponse_Requ\u00eate, \"null\", \"\")\r\n            'Retourne ke texte de la r\u00e9ponse\r\n            Interrogation_API_SIRENE = R\u00e9ponse_Requ\u00eate\r\n        Case Else: '...statut en erreur -&gt; retourne un message d'erreur\r\n            Select Case Statut_Requ\u00eate\r\n                Case 400:\r\n                    Message_Erreur = \"Nombre incorrect de param\u00e8tres ou les param\u00e8tres sont mal format\u00e9s\"\r\n                Case 401:\r\n                    Message_Erreur = \"Jeton d'acc\u00e8s manquant ou invalide\"\r\n                Case 404:\r\n                    Message_Erreur = \"Entreprise non trouv\u00e9e dans la base Sirene\"\r\n                Case 406:\r\n                    Message_Erreur = \"Le param\u00e8tre 'Accept' de l'en-t\u00eate HTTP contient une valeur non pr\u00e9vue\"\r\n                Case 414:\r\n                    Message_Erreur = \"Requ\u00eate trop longue\"\r\n                Case 429:\r\n                    Message_Erreur = \"Quota d'interrogations de l'API d\u00e9pass\u00e9\"\r\n                Case 500:\r\n                    Message_Erreur = \"Erreur interne du serveur\"\r\n                Case 503:\r\n                    Message_Erreur = \"Service indisponible\"\r\n            End Select\r\n            Message_Erreur = \"Erreur \" &amp; Statut_Requ\u00eate &amp; \". \" &amp; Message_Erreur\r\n            Interrogation_API_SIRENE = Message_Erreur\r\n    End Select\r\nEnd Function\r\n\r\n\r\n'-----------------------------------------------------------------------------------------------------------------------\r\n'Extraction des donn\u00e9es\r\n'Informations sur cette fonction : https:\/\/www.auditsi.eu\/?p=9377\r\nFunction Extraction_Champ_API_SIRENE(R\u00e9ponse_Requ\u00eate_SIRENE As Variant, NomChamp As String) As Variant\r\n    Dim PositionD\u00e9but As Long\r\n    Dim NomChamp_A_rechercher As String\r\n    Dim Donn\u00e9e As Variant\r\n    \r\n    NomChamp_A_rechercher = Chr(34) &amp; NomChamp &amp; Chr(34) &amp; \":\"\r\n    \r\n    PositionD\u00e9but = InStr(R\u00e9ponse_Requ\u00eate_SIRENE, NomChamp_A_rechercher)\r\n    \r\n    Select Case PositionD\u00e9but\r\n        Case 0: 'champ non trouv\u00e9 -&gt; retour vide\r\n            Extraction_Champ_API_SIRENE = \"\"\r\n        Case Else: 'sinon retourne la donn\u00e9e correspondante\r\n            PositionD\u00e9but = PositionD\u00e9but + Len(NomChamp_A_rechercher)\r\n            Donn\u00e9e = Replace(Mid(R\u00e9ponse_Requ\u00eate_SIRENE, PositionD\u00e9but, InStr(Right(R\u00e9ponse_Requ\u00eate_SIRENE, Len(R\u00e9ponse_Requ\u00eate_SIRENE) - PositionD\u00e9but + 1), \",\") - 1), Chr(34), \"\")\r\n            Select Case NomChamp\r\n                Case \"dateCreationUniteLegale\", \"dateDernierTraitementUniteLegale\", \"dateSuppressionUniteLegale\":\r\n                    Donn\u00e9e = Left(Donn\u00e9e, 10)\r\n                    Donn\u00e9e = CDate(Right(Donn\u00e9e, 2) &amp; \"\/\" &amp; Mid(Donn\u00e9e, 6, 2) &amp; \"\/\" &amp; Left(Donn\u00e9e, 4))\r\n            End Select\r\n            Extraction_Champ_API_SIRENE = Donn\u00e9e\r\n    End Select\r\nEnd Function\r\n<\/pre>\n<p style=\"text-align: justify;\"><strong><em>Le classeur Excel :<\/em><\/strong><\/p>\n<p style=\"text-align: justify;\">Le classeur Excel est propos\u00e9 en libre t\u00e9l\u00e9chargement en bas de cette page.<\/p>\n<p style=\"text-align: justify;\">En cellule B2, coller la <strong>clef (<em>token<\/em>) communiqu\u00e9e par le site SIRENE<\/strong>.<\/p>\n<p style=\"text-align: justify;\">Sans <em>token<\/em>, il n&#8217;est pas possible d&#8217;interroger le serveur SIRENE ; celui-ci retournera invariablement le statut 401 (Jeton d&#8217;acc\u00e8s manquant ou invalide) ; il en est de m\u00eame si le <em>token<\/em> est erron\u00e9 ou p\u00e9rim\u00e9.<\/p>\n<p style=\"text-align: justify;\">En cellule B6, saisir le <strong>num\u00e9ro SIREN<\/strong> de l&#8217;entreprise, ici : 312 212 301 (RENAULT RETAIL GROUP).<\/p>\n<p style=\"text-align: justify;\">En cellule B7, saisir la formule :<\/p>\n<p style=\"text-align: center;\">=Interrogation_API_SIRENE($B$6;$B$2)<\/p>\n<p style=\"text-align: justify;\">La fonction Interrogation_API_SIRENE demande deux param\u00e8tres : un num\u00e9ro SIREN (ici $B$6 = 312 212 301) et la clef SIRENE (ici cellule $B$2).<\/p>\n<p style=\"text-align: justify;\">Excel affiche la <strong>r\u00e9ponse du serveur SIRENE<\/strong> correspondant au num\u00e9ro SIREN indiqu\u00e9 :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-11937\" src=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-reponse.png\" alt=\"API SIRENE r\u00e9ponse\" width=\"713\" height=\"118\" srcset=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-reponse.png 713w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-reponse-300x50.png 300w\" sizes=\"auto, (max-width: 713px) 100vw, 713px\" \/><\/p>\n<p style=\"text-align: justify;\">Si le <em>token<\/em> n&#8217;est pas renseign\u00e9 en cellule B2 ou s&#8217;il est erron\u00e9 ou p\u00e9rim\u00e9, Excel affichera une erreur 401 :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-11936\" src=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-token-absent.png\" alt=\"API SIRENE token absent\" width=\"567\" height=\"153\" srcset=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-token-absent.png 567w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-token-absent-300x81.png 300w\" sizes=\"auto, (max-width: 567px) 100vw, 567px\" \/><\/p>\n<p style=\"text-align: justify;\">Extrait de la <strong>r\u00e9ponse du serveur SIRENE<\/strong> (ici pour le SIREN de RENAULT RETAIL GROUP) est une succession de noms de champ de donn\u00e9es et des donn\u00e9es corespondantes :<\/p>\n<p style=\"text-align: justify;\">{&#8220;header&#8221;:{&#8220;<span style=\"background-color: #cc99ff;\">statut&#8221;:200<\/span>,&#8221;message&#8221;:&#8221;OK&#8221;},&#8221;uniteLegale&#8221;:{&#8220;<span style=\"background-color: #99ccff;\">siren&#8221;:&#8221;312212301<\/span>&#8220;,&#8221;statutDiffusionUniteLegale&#8221;:&#8221;O&#8221;,<span style=\"background-color: #ccffff;\">&#8220;<\/span><span style=\"color: #000000;\"><span style=\"background-color: #ccffff;\">dateCreationUniteLegale&#8221;:&#8221;1978-01-01&#8243;<\/span>,<\/span>&#8220;sigleUniteLegale&#8221;:,&#8221;sexeUniteLegale&#8221;:,&#8221;prenom1UniteLegale&#8221;:,&#8221;prenom2UniteLegale&#8221;:,&#8221;prenom3UniteLegale&#8221;:,&#8221;prenom4UniteLegale&#8221;:,&#8221;prenomUsuelUniteLegale&#8221;:,&#8221;pseudonymeUniteLegale&#8221;:,&#8221;identifiantAssociationUniteLegale&#8221;:,&#8221;trancheEffectifsUniteLegale&#8221;:&#8221;52&#8243;,&#8221;anneeEffectifsUniteLegale&#8221;:&#8221;2020&#8243;,&#8221;dateDernierTraitementUniteLegale&#8221;:&#8221;2023-10-12T11:09:32&#8243;,&#8221;nombrePeriodesUniteLegale&#8221;:13,&#8221;categorieEntreprise&#8221;:&#8221;GE&#8221;,&#8221;anneeCategorieEntreprise&#8221;:&#8221;2020&#8243;,&#8221;periodesUniteLegale&#8221;:[{&#8220;dateFin&#8221;:,&#8221;dateDebut&#8221;:&#8221;2022-03-07&#8243;,&#8221;etatAdministratifUniteLegale&#8221;:&#8221;A&#8221;,&#8221;changementEtatAdministratifUniteLegale&#8221;:false,&#8221;nomUniteLegale&#8221;:,&#8221;changementNomUniteLegale&#8221;:false,&#8221;nomUsageUniteLegale&#8221;:,&#8221;changementNomUsageUniteLegale&#8221;:false,&#8221;<span style=\"background-color: #ccffcc;\">denominationUniteLegale&#8221;:&#8221;RENAULT RETAIL GROUP&#8221;<\/span>,&#8221;changementDenominationUniteLegale&#8221;:false,&#8230;<\/p>\n<p style=\"text-align: justify;\">La fonction Extraction_Champ_API_SIRENE <strong>extrait les champs de donn\u00e9es<\/strong> de la r\u00e9ponse re\u00e7ue de SIRENE.<\/p>\n<p style=\"text-align: justify;\">Dans l&#8217;exemple ci-apr\u00e8s, le nom des champs de donn\u00e9es sont situ\u00e9s en colonne B (\u00e0 partir de la ligne 11) et les donn\u00e9es correspondantes en colonne C :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-11938\" src=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-champs.png\" alt=\"API SIRENE champs\" width=\"1125\" height=\"434\" srcset=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-champs.png 1125w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-champs-300x116.png 300w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-champs-1024x395.png 1024w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-champs-768x296.png 768w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-champs-730x282.png 730w\" sizes=\"auto, (max-width: 1125px) 100vw, 1125px\" \/><\/p>\n<p style=\"text-align: justify;\">Ainsi, en cellule B11, le nom du champ \u00e0 extraire s&#8217;intitule <span style=\"background-color: #ccffcc;\"><em>denominationUniteLegale<\/em><\/span> (d\u00e9nomination sociale de l&#8217;entreprise). En C11, la formule de calcul pour extraire la d\u00e9nomination sociale est :<\/p>\n<p style=\"text-align: center;\">=Extraction_Champ_API_SIRENE($B$7;B11)<\/p>\n<p style=\"text-align: justify;\">Le premier param\u00e8tre correspond \u00e0 la r\u00e9ponse SIRENE (situ\u00e9e ici en cellule B7 et le deuxi\u00e8me au nom du champ de donn\u00e9es \u00e0 extraire (ici <em>denominationUniteLegale<\/em>). Le r\u00e9sultat correspondant est : <span style=\"background-color: #ccffcc;\">RENAULT RETAIL GROUP<\/span>.<\/p>\n<p style=\"text-align: justify;\">Parmi les autres champs int\u00e9ressants \u00e0 extraire :<\/p>\n<ul>\n<li>nicSiegeUniteLegale (NIC du si\u00e8ge social) ; le NIC associ\u00e9 au num\u00e9ro SIREN permet de reconstituer le <strong>num\u00e9ro SIRET du si\u00e8ge social<\/strong> (SIREN + NIC = SIRET) ;<\/li>\n<li style=\"text-align: justify;\"><span style=\"background-color: #ccffff;\">dateCreationUniteLegale<\/span> (<strong>date d&#8217;immatriculation<\/strong> de l&#8217;entreprise au RCS) ;<\/li>\n<li style=\"text-align: justify;\">activitePrincipaleUniteLegale (<strong>code APE<\/strong>) ;<\/li>\n<li style=\"text-align: justify;\">categorieJuridiqueUniteLegale (identifie la <strong>forme juridique<\/strong> ; <a href=\"https:\/\/www.insee.fr\/fr\/information\/2028129\" target=\"_blank\" rel=\"noopener\">la liste des codes est fournie sur le site SIRENE<\/a>) ;<\/li>\n<li style=\"text-align: justify;\">economieSocialeSolidaireUniteLegale (appartenance au <strong>champ de l&#8217;\u00e9conomie sociale et solidaire<\/strong>) ;<\/li>\n<li style=\"text-align: justify;\">societeMissionUniteLegale (l&#8217;entreprise appartient au <strong>champ des soci\u00e9t\u00e9s \u00e0 mission<\/strong>) ;<\/li>\n<li style=\"text-align: justify;\">identifiantAssociationUniteLegale (num\u00e9ro au <strong>R\u00e9pertoire National des Associations<\/strong>, RNA).<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">La <strong>liste compl\u00e8te des champs de donn\u00e9es<\/strong> disponibles est t\u00e9l\u00e9chargeable en bas de page (PDF nomm\u00e9 Sch\u00e9mas De Sortie API Sirene) ou <a href=\"https:\/\/sirene.fr\/static-resources\/htm\/v_sommaire.htm\" target=\"_blank\" rel=\"noopener\">consultable sur le site SIRENE<\/a>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-11790\" src=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-Liste-champs.png\" alt=\"API SIRENE Liste champs\" width=\"770\" height=\"578\" srcset=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-Liste-champs.png 770w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-Liste-champs-300x225.png 300w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-Liste-champs-768x576.png 768w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/API-SIRENE-Liste-champs-730x548.png 730w\" sizes=\"auto, (max-width: 770px) 100vw, 770px\" \/><\/p>\n<p style=\"text-align: justify;\">A noter : la version actuelle de l&#8217;API est la V3. Courant 2024, la V4 devrait entrer en fonction suite \u00e0 le mise en oeuvre du Guichet Unique : pour plus d&#8217;informations, cf la <a href=\"https:\/\/sirene.fr\/sirene\/public\/static\/sirene4\" target=\"_blank\" rel=\"noopener\">page de la V4 sur le site SIRENE<\/a>.<\/p>\n<p style=\"text-align: justify;\">Calendrier pr\u00e9visionnel de la transition vers la V4 :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-11791\" src=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/Sirene-4-Page-Calendrier.jpg\" alt=\"Sirene 4-Page-Calendrier\" width=\"2282\" height=\"813\" srcset=\"https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/Sirene-4-Page-Calendrier.jpg 2282w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/Sirene-4-Page-Calendrier-300x107.jpg 300w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/Sirene-4-Page-Calendrier-1024x365.jpg 1024w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/Sirene-4-Page-Calendrier-768x274.jpg 768w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/Sirene-4-Page-Calendrier-1536x547.jpg 1536w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/Sirene-4-Page-Calendrier-2048x730.jpg 2048w, https:\/\/www.auditsi.eu\/wp-content\/uploads\/2023\/10\/Sirene-4-Page-Calendrier-730x260.jpg 730w\" sizes=\"auto, (max-width: 2282px) 100vw, 2282px\" \/><\/p>\n<p style=\"text-align: justify;\"><span style=\"text-decoration: underline;\"><strong>A suivre :<\/strong><\/span> <a href=\"https:\/\/www.auditsi.eu\/?p=11941\">interrogation de la base de donn\u00e9es \u00e9tablissements (SIRET)<\/a>&#8230;<\/p>\n<p style=\"text-align: justify;\">Autres moyens permettant de consulter des informations sur les entreprises :<\/p>\n<ul>\n<li><a href=\"https:\/\/www.auditsi.eu\/?p=11711\">T\u00e9l\u00e9charger gratuitement des listes d\u2019entreprises et de leurs \u00e9tablissements<\/a> (fichier SIRENE)<\/li>\n<li>Consulter des sites internet sp\u00e9cialis\u00e9s : <a href=\"https:\/\/avis-situation-sirene.insee.fr\/\" target=\"_blank\" rel=\"noopener\">fiche SIRENE (au format PDF)<\/a>, <a href=\"https:\/\/www.auditsi.eu\/?p=9178\">site Pappers<\/a>, site <a href=\"https:\/\/www.auditsi.eu\/?p=9421\">Soci\u00e9t\u00e9 Ninja<\/a>\u2026 ; <a href=\"https:\/\/www.auditsi.eu\/?p=11626\">Automatiser le t\u00e9l\u00e9chargement en masse de fiches SIRENE<\/a> .<\/li>\n<li>Mettre en oeuvre des API (<em>Application Programming Interface<\/em> ou interface de programmation applicative) : par exemple celles de <a href=\"https:\/\/api.insee.fr\/catalogue\/site\/themes\/wso2\/subthemes\/insee\/pages\/item-info.jag?name=Sirene&amp;version=V3&amp;provider=insee\" target=\"_blank\" rel=\"noopener\">SIRENE<\/a> ou <a href=\"https:\/\/www.auditsi.eu\/?p=9377\">Pappers<\/a>.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">___<\/p>\n<p style=\"text-align: justify;\">Pour aller plus loin : articles en rapport avec <a href=\"https:\/\/www.auditsi.eu\/?tag=sirene\">SIRENE<\/a>, <a href=\"https:\/\/www.auditsi.eu\/?tag=siren\">SIREN<\/a>, <a href=\"https:\/\/www.auditsi.eu\/?tag=siret\">SIRET<\/a> \/ <a href=\"https:\/\/www.auditsi.eu\/?tag=publicite-legale\">Publicit\u00e9 l\u00e9gale des entreprises<\/a> \/ <a href=\"https:\/\/www.auditsi.eu\/?tag=api\">API<\/a> \/ <a href=\"https:\/\/www.auditsi.eu\/?tag=open-data\">Open Data<\/a><\/p>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div id=\"sconnect-is-installed\" style=\"display: none;\">2.13.0.0<\/div>\n<div style=\"padding-bottom:20px; padding-top:10px;\" class=\"hupso-share-buttons\"><!-- Hupso Share Buttons - https:\/\/www.hupso.com\/share\/ --><a class=\"hupso_counters\" href=\"https:\/\/www.hupso.com\/share\/\"><img decoding=\"async\" src=\"https:\/\/static.hupso.com\/share\/buttons\/lang\/fr\/share-small.png\" style=\"border:0px; padding-top:2px; float:left;\" alt=\"Share Button\"\/><\/a><script type=\"text\/javascript\">var hupso_services_c=new Array(\"twitter\",\"facebook_like\",\"facebook_send\",\"email\",\"print\",\"linkedin\");var hupso_counters_lang = \"fr_FR\";var hupso_image_folder_url = \"\";var hupso_twitter_via=\"BenoitRiviere14\";var hupso_url_c=\"\";var hupso_title_c=\"Excel%20%3A%20collecter%20des%20donn%C3%A9es%20juridiques%20sur%20les%20entreprises%20avec%20l%27API%20SIRENE%20-%201%C3%A8re%20partie%20%3A%20base%20SIREN%20%28entreprises%29\";<\/script><script type=\"text\/javascript\" src=\"https:\/\/static.hupso.com\/share\/js\/counters.js\"><\/script><!-- Hupso Share Buttons --><\/div>","protected":false},"excerpt":{"rendered":"<p>Dans un monde \u00e9conomique aussi mouvant o\u00f9 les crises de succ\u00e8dent aussi rapidement, les entreprises ont besoin d\u2019obtenir et de maintenir des informations financi\u00e8res et juridiques, fiables et en permanence \u00e0 jour, sur leurs partenaires (clients, fournisseurs\u2026). Que ce soit pour cr\u00e9er ou mettre \u00e0 jour des fiches tiers (outil strat\u00e9gique dans le cadre de &#8230;<\/p>\n<p><a href=\"https:\/\/www.auditsi.eu\/?p=11785\" class=\"more-link\">Continue reading &lsquo;Excel : collecter des donn\u00e9es juridiques sur les entreprises avec l&#8217;API SIRENE &#8211; 1\u00e8re partie : base SIREN (entreprises)&rsquo; &raquo;<\/a><\/p>\n<div style=\"padding-bottom:20px; padding-top:10px;\" class=\"hupso-share-buttons\"><!-- Hupso Share Buttons - https:\/\/www.hupso.com\/share\/ --><a class=\"hupso_counters\" href=\"https:\/\/www.hupso.com\/share\/\"><img src=\"https:\/\/static.hupso.com\/share\/buttons\/lang\/fr\/share-small.png\" style=\"border:0px; padding-top:2px; float:left;\" alt=\"Share Button\"\/><\/a><script type=\"text\/javascript\">var hupso_services_c=new Array(\"twitter\",\"facebook_like\",\"facebook_send\",\"email\",\"print\",\"linkedin\");var hupso_counters_lang = \"fr_FR\";var hupso_image_folder_url = \"\";var hupso_twitter_via=\"BenoitRiviere14\";var hupso_url_c=\"\";var hupso_title_c=\"Excel%20%3A%20collecter%20des%20donn%C3%A9es%20juridiques%20sur%20les%20entreprises%20avec%20l%27API%20SIRENE%20-%201%C3%A8re%20partie%20%3A%20base%20SIREN%20%28entreprises%29\";<\/script><script type=\"text\/javascript\" src=\"https:\/\/static.hupso.com\/share\/js\/counters.js\"><\/script><!-- Hupso Share Buttons --><\/div>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"ngg_post_thumbnail":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[3066,472,490,215],"tags":[3045,3062,2116,951,559,3044,3063,3048,3064,3058,3061,1787,2398,2978,2118,3057,2395,2351,3060,1784,2358,2359,3065],"class_list":["post-11785","post","type-post","status-publish","format-standard","hentry","category-collecter-des-donnees-juridiques-sur-les-entreprises-avec-lapi-sirene","category-cycle-clients-controle-des-comptes","category-cycle-fournisseurs-controle-des-comptes","category-vba","tag-open-get","tag-ape","tag-api","tag-association","tag-associations","tag-createobjectmsxml2-serverxmlhttp-6-0","tag-economie-sociale","tag-fiche-tiers","tag-fondations","tag-forme-juridique","tag-immatriculation-rcs","tag-insee-fr","tag-loi-sapin-2","tag-nic","tag-open-data","tag-private-function-end-function","tag-requete-http","tag-rna","tag-siege-social","tag-siren","tag-sirene","tag-siret","tag-societe-a-mission"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=\/wp\/v2\/posts\/11785","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=11785"}],"version-history":[{"count":20,"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=\/wp\/v2\/posts\/11785\/revisions"}],"predecessor-version":[{"id":11932,"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=\/wp\/v2\/posts\/11785\/revisions\/11932"}],"wp:attachment":[{"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=11785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=11785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.auditsi.eu\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=11785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}