Extraire code NAF a partir du SIRET
Bonjour
J'ai plusieurs ligne de SIRET et j'aimerais extraire le code Naf a partir du SIRET
Je débute en VBA
Bonjour,
A partir du fichier transmis, je ne comprends pas la demande. Le code APE (anciennement NAF) est constitué de 5 caractères (4 chiffres + 1 lettre) et il n'est pas dans le SIRET qui lui est composé du SIRENE (9er caractères + le code établissement 5 derniers caractères).
Donc tu ne peux pas l'extraire mais éventuellement le rechercher si tu as une liste des SIRET et des codes APE correspondant aux établissements.
Bonjour eric, Cylfo
A partir du code donné précédemment et qui utilise l'API INSEE,
toutes les informations sont dans les données JSON retournées
Il suffit de savoir les traiter
Function RécupNAF(sNom As String, sAdresse As String)
Dim JsonRésultat As String, Siret As String
Dim Résultat() As String, Nb_résultats As Long
Dim API_Recherche_Entreprises As String
' Adresse Web de l'API
API_Recherche_Entreprises = "https://recherche-entreprises.api.gouv.fr/search"
' Aller chercher l'information
JsonRésultat = Application.WebService(API_Recherche_Entreprises & "?q=" & sNom & " " & sAdresse)
' Retravailler le résultat
JsonRésultat = Replace(JsonRésultat, "{""results"": [", "")
JsonRésultat = Replace(JsonRésultat, "{", "")
JsonRésultat = Replace(JsonRésultat, "}", "")
JsonRésultat = Replace(JsonRésultat, "]", "")
' Afficher les données récupérées dans la fenêtre d'exécution
Debug.Print JsonRésultat
' Récupérer le résultat dans un tableau
Résultat = Split(JsonRésultat, ",")
' Nombre de résultat trouvés
Nb_résultats = Val(Split(Filter(Résultat, "total_results")(0), ":")(1))
' Petit message
If Nb_résultats = 0 Then RécupNAF = "aucun résultat": Exit Function
If Nb_résultats > 1 Then RécupNAF = "plus d'un résultat - recherche non sélective ": Exit Function
' Récupérer ce qui nous intéresse dans le résultat JSON
' Code NAF = 2ème ligne du filtre
RécupNAF = Replace(Split(Filter(Résultat, "activite_principale")(2), ":")(1), Chr(34), "")
End FunctionA+
Re Cylfo,Bruno
Merci @Bruno
mais je ne sais pas comment on l'appelle la fonction
Re
Re
Merci @Bruno
mais je ne sais pas comment on l'appelle la fonction
J'espère que vous voulez rire
Même chose qu'ici https://forum.excel-pratique.com/s/goto/1133173
Sauf que la fonction s'appelle "RécupNAF()"