La loi pour une République numérique (Loi n° 2016-1321 du 7 octobre 2016) a ouvert les bases de données SIRENE (principe de l’open data) à partir de janvier 2017.
Le site SIRENE (géré par l’INSEE) propose plusieurs bases de données en téléchargement intégral regroupant les données des millions d’entreprises françaises (SIREN) et de leurs établissements (SIRET). Depuis 1973, SIRENE a enregistré vingt millions d’entreprises et 28 millions d’établissements.
Le fichier “StockUniteLegale” détaille les informations SIREN (dénomination sociale, NIC, date de création, date de cessation…) des entreprises (unités légales) qu’elles soient en activité ou bien radiées. Elles sont utiles pour valider l’existence d’entreprises (numéros SIREN) et la cohérence des données comprises dans une base clients ou fournisseurs (à l’image d’un des objectifs poursuivis par PADoCC_Ecritures).
La version disponible au 1er octobre 2020 du fichier “StockUniteLegale” sur le site SIRENE pèse 651 Mo compressés et 2.7 Go une fois décompressée ; autant dire que, du fait de son volume, ce fichier est impossible à ouvrir dans Excel ou Access.
Le programme ci-dessous se propose de tronçonner la base SIREN en fichiers CSV de 800 milles lignes. Pour le lecteur pressé, le résultat de ce découpage peut être téléchargé directement depuis la page suivante.
'Découpage base SIRENE en fichiers de 800 mille lignes chacun 'B. RIVIERE 10/2020 Option Compare Database 'Activer la librairie Microsoft Scripting Runtime (Menu Outils / Références...) 'Définition des variables '---Fichier SIREN (source) Dim oFSOLect As Scripting.FileSystemObject Dim oFlLect As Scripting.File Dim oTxtLect As Scripting.TextStream '---Fichier SIREN découpé (destination) Dim oFSOEnreg As FileSystemObject Dim oTxtEnreg As TextStream '---Variables compteurs Dim i As Long 'position dans le fichier destination (n° de ligne) Dim j As Long 'n° de fichier destination Sub Lecture_SIREN() 'Instanciation du FSO Lecture Set oFSOLect = New Scripting.FileSystemObject Set oFlLect = oFSOLect.GetFile("C:\Lecture SIREN\StockUniteLegale_utf8.csv") Set oTxtLect = oFlLect.OpenAsTextStream(ForReading) 'Le premier fichier portera le n° 1 j = 1 'Boucle While... Wend : tant que la fin du fichier source n'est pas atteinte (.AtEndOfStream) While Not oTxtLect.AtEndOfStream 'Instanciation du FSO Enregistrement (destination) Set oFSOEnreg = New FileSystemObject Set oTxtEnreg = oFSOEnreg.CreateTextFile("C:\Lecture SIREN\SIREN " & j & ".csv", True) '-> True : écrase le fichier destination (Overwrite) s'il existe déjà 'Reporte le nom des champs (entête) du fichier source dans les fichiers destination >1 If j > 1 Then oTxtEnreg.WriteLine "siren,statutDiffusionUniteLegale,unitePurgeeUniteLegale,dateCreationUniteLegale,sigleUniteLegale,sexeUniteLegale,prenom1UniteLegale,prenom2UniteLegale,prenom3UniteLegale,prenom4UniteLegale,prenomUsuelUniteLegale,pseudonymeUniteLegale,identifiantAssociationUniteLegale,trancheEffectifsUniteLegale,anneeEffectifsUniteLegale,dateDernierTraitementUniteLegale,nombrePeriodesUniteLegale,categorieEntreprise,anneeCategorieEntreprise,dateDebut,etatAdministratifUniteLegale,nomUniteLegale,nomUsageUniteLegale,denominationUniteLegale,denominationUsuelle1UniteLegale,denominationUsuelle2UniteLegale,denominationUsuelle3UniteLegale,categorieJuridiqueUniteLegale,activitePrincipaleUniteLegale,nomenclatureActivitePrincipaleUniteLegale,nicSiegeUniteLegale,economieSocialeSolidaireUniteLegale,caractereEmployeurUniteLegale" 'la première ligne à écrire i = 1 'Boucle While... Wend : tant que la 800 millième ligne du fichier destination, ni la fin du fichier source n'est pas atteinte... While Not oTxtLect.AtEndOfStream And i < 800000 oTxtEnreg.WriteLine oTxtLect.ReadLine 'On passe à la ligne suivante i = i + 1 Wend 'Retour au début de la boucle oTxtEnreg.Close 'On passe au fichier destination suivant j = j + 1 Wend oTxtLect.Close End Sub
La documentation téléchargeable ci-après détaille le contenu de chaque champ de données du fichier SIREN.
Approfondir le sujet : VBA.


Derniers articles parBenoît RIVIERE (voir tous)
- Véhicules de fonction : la TVA devient-elle enfin déductible ? - lundi 12 mai 2025
- Cybermenaces 2024 : un panorama inquiétant des attaques informatiques - lundi 5 mai 2025
- IA & deepfake : Peut-on encore faire confiance à ce qu’on voit ? - vendredi 11 avril 2025
- Deepfake & arnaque : comment une simple question a sauvé Ferrari - samedi 29 mars 2025
- Pappers International : Une révolution dans l’accès aux données des entreprises européennes - dimanche 9 mars 2025