Faire un tableau dans Excel pour croiser les utilisateurs et les groupes Active Directory peut être bien utile. Ne serait-ce que pour voir plus clair les groupes qui sont sans membres ou pour avoir une synthèse des groupes par utilisateur.
Voici donc un programme qui permet de lire l’AD d’un domaine et de générer un fichier Excel avec en colonnes, les groupes, et en lignes les utilisateurs.
En croisement de lignes et colonnes, ‘1’ pour cocher si l’utilisateur est dans ce groupe. ainsi vous pourrez facilement faire des sommes de chaque groupe et pour chaque utilisateur.
J’ai “packagé” le projet dans un “msi”. C’est à dire que vous pouvez installer le programme sur votre windows. Ce package vous propose un EXE mais aussi les sources en VB.Net. L’exe est donc utilisable tel que mais si vous voulez refaire votre propre programme, vous trouverez le projet VisualStudio 2010 dans le répertoire d’installation de l’EXE
Comme ce programme utilise Excel, encore faut-il l’avoir installé sur votre machine 😉
Exporter Active Directory dans Excel (zip)
Je vous souhaite de bonnes exportations ! 😉
Tout d’abord, merci pour cet excellent programme.
J’ai eu un message d’erreur lors de l’utilisation.
Lors du débug, je me suis rendu compte que le symbole # était mal interprété.
N’étant pas capable de résoudre le problème, j’ai ajouté un test :
If sProp “” Then
If sProp = “CN=TSUSERS\#SITE,OU=Groupes,OU=XXX,DC=YYY,DC=msft” Then sProp = “CN=TSUSERS#SITE,OU=Groupes,OU=XXX,DC=YYY,DC=msft”
Bonjour,
Juste ce qu’il me faudrait mais malheureusement erreur au téléchargement.
est-il possible le de vérifier si le téléchargement marche toujours ?
C’est réparé, merci de nous avoir prévenu.
Bonjour,
J’ai le meme problème qu’Andy d’octobre 2013…
Pouvez vous me dire comment y remedier, ca me fera gagner un temps fou !
Merci 🙂
La macro est exactement ce que je recherchais. J’étais à la recherche de bout de code me permettant justement de réaliser la même chose. J’avoue que je n’aurais pas pensé à organiser ça de cette façon, c’est tout simplement Génial. Merci de m’avoir fait gagner au moins une journée 🙂
Bonjour,
Ce programme à l’air très intéressant et me rendrait de grands service. Mais impossible de lancer l’application, après installation sans erreur je ne trouve pas l’application sous program files ( x86) ni ailleurs d’ailleurs !
En te remerciant
Bonjour,
J’ai une boîte de dialogue qui s’affiche :
Consultez la fin de ce message pour plus de détails sur l’appel du débogage
juste-à-temps (JIT) à la place de cette boîte de dialogue.
************** Texte de l’exception **************
System.Exception: Impossible de créer le composant ActiveX.
à Microsoft.VisualBasic.Interaction.CreateObject(String ProgId, String ServerName)
à WindowsApplication1.Form2.CreateExcelSheet()
à WindowsApplication1.Form2.Button1_Click(Object sender, EventArgs e)
à System.Windows.Forms.Control.OnClick(EventArgs e)
à System.Windows.Forms.Button.OnClick(EventArgs e)
à System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.ButtonBase.WndProc(Message& m)
à System.Windows.Forms.Button.WndProc(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Assemblys chargés **************
mscorlib
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.296 (RTMGDR.030319-2900)
CodeBase : file:///C:/WINDOWS/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
—————————————-
WindowsApplication1
Version de l’assembly : 1.0.0.0
Version Win32 : 1.0.0.0
CodeBase : file:///C:/Program%20Files%20(x86)/SetupExportExcelAD/WindowsApplication1.exe
—————————————-
Microsoft.VisualBasic
Version de l’assembly : 10.0.0.0
Version Win32 : 10.0.30319.1 built by: RTMRel
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
—————————————-
System
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.296 built by: RTMGDR
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
—————————————-
System.Core
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.233 built by: RTMGDR
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
—————————————-
System.Windows.Forms
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.278 built by: RTMGDR
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
—————————————-
System.Drawing
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.282 built by: RTMGDR
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
—————————————-
System.Runtime.Remoting
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.1 (RTMRel.030319-0100)
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
—————————————-
System.DirectoryServices
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.1 (RTMRel.030319-0100)
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.DirectoryServices/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.DirectoryServices.dll
—————————————-
System.Configuration
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.1 (RTMRel.030319-0100)
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
—————————————-
System.Xml
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.233 built by: RTMGDR
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
—————————————-
mscorlib.resources
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.1 (RTMRel.030319-0100)
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_fr_b77a5c561934e089/mscorlib.resources.dll
—————————————-
Microsoft.VisualBasic.resources
Version de l’assembly : 10.0.0.0
Version Win32 : 10.0.30319.1 built by: RTMRel
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic.resources/v4.0_10.0.0.0_fr_b03f5f7f11d50a3a/Microsoft.VisualBasic.resources.dll
—————————————-
System.Windows.Forms.resources
Version de l’assembly : 4.0.0.0
Version Win32 : 4.0.30319.1 built by: RTMRel
CodeBase : file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_fr_b77a5c561934e089/System.Windows.Forms.resources.dll
—————————————-
************** Débogage JIT **************
Pour activer le débogage juste-à-temps (JIT), le fichier de configuration pour cette
application ou cet ordinateur (machine.config) doit avoir la valeur
jitDebugging définie dans la section system.windows.forms.
L’application doit également être compilée avec le débogage
activé.
Par exemple :
Lorsque le débogage juste-à-temps est activé, les exceptions non gérées
seront envoyées au débogueur JIT inscrit sur l’ordinateur
plutôt que d’être gérées par cette boîte de dialogue.
PS : Je suis un débutant
Merci
Bonjour,
Super petit programme qui marche très bien !
Est-ce que l’on peut paramétrer les champs que l’on souhaite exporter (comme par exemple l’adresse mail) ?
Me revoilà…
Changé de poste de travail, passage à Seven Pro SP1 + MS Office 2010 SP1.
Je me dis que ca va peut etre marcher, mais : http://pastebin.com/xj3Wb46w
Il doit y avoir un soucis du coté de notre AD (2003 natif)
Bonjour,
Non, je ne crois pas que cela vienne de l’AD; A moins qu’il y ait un nom de groupe qui gène Excel. L’erreur vient du programme quand il sélectionne une plage de cellules. Je suppose que l’erreur intervient quand, pour un user donné, il cherche à sectionner la colonne du groupe pour cocher son appartenance.
Cette plage, il ne la trouve pas ou en tous les cas Excel n’aime pas cette recherche.
Il faut essayer le programme à partir des sources et voir au moment où il se plante quelles en sont les raisons. En mode release, on voit où il se plante mais on a pas le contenu des données.
Bonjour,
Ce petit programme m’intéresserait fortement mais “erreur 404” lorsque je clique sur le lien de téléchargement 🙁
Décidément, on a pas la chance avec le 404 !
Ce soir ça marche. Nicolas a du passé par ici. Merci Nicolas.
Je viens de le lancer. Mais je rencontre une erreur (oui encore 😉 ).
Je suis admin non pas de l’ad mais d’une OU, faut il lancer l’exécutable à partir du contrôleur de domaine (si oui c’est foutu pour moi :-() ?
Entre les deux messages, je comprends que cela fonctionne. Super !
J’espère que ce petit programme fera ton bonheur du moment.
😉
Bonjour,
Je viens d’essayer sans passer par le serveur qui filtre notre accès internet et effectivement, cela fonctionne.
Un grand merci à toi pour avoir pris le temps de me répondre.
🙂
En fait voilà l’erreur :
7-Zip 9.04 beta Copyright (c) 1999-2009 Igor Pavlov 2009-05-30
p7zip Version 9.04 (locale=fr_FR.UTF-8,Utf16=on,HugeFiles=on,2 CPUs)
Error: /home/navigation/Téléchargements/SetupExportExcelAD(2).zip: Can not open file as archive
Errors: 1
hum hum.
De mon coté c’est la version 9.20 de 7Zip mais cela ne doit pas changer.Y aurait-il un firewall ou un antivirus qui ferait filtre ?
Essayes depuis un autre endroit.
Et puis sinon, je peux te l’envoyer par email.
Alors je ne comprends qu’est ce qui peut planter chez moi car lorsque je clique dessus le zip se charge en effet, mais il est à 0 octets et lorsque je veux le dézipper, il me marque un message d’erreur.
Merci pour votre patience. 🙂
Bonjour,
Le lien fonctionne mais renvoie sur un dossier “vide” donc extraction impossible.
Qu’en est il ?
oups! Bonjour, j’ai essayé il y a une minute et le lien est bon. Il apporte un zip qui contient le msi pour l’install sous windows.
C’est réparé !!
Le lien de téléchargement n’est plus valide.
Merci
merci de l’information. J’ai contacté le webmaster il y a 5 minutes. La réparation ne devrait donc pas tarder…
Helas je ne parles pas le VB dans le texte mon truc c’est plutôt bash, ce qui ne m’est pas d’une grande utilité pour ce qui me concerne. Je n’ai meme pas visuel studio d’installé, pour dire…
Excel se lance bien, c’est à ce moment là que çà plante d’ailleurs. .Net 4.0 est installé.
J’ai essayé depuis un autre poste, même config (XP SP3 – EXCEL 2003): même erreur.
Pour info:
Voir les logs ici : http://pastebin.com/ESkD1sm7
C’est pire que des logs linux ça !!! hé hé (ptit troll)
Don’t feed the trolls 😉
Excel se lance bien, donc c’est lors du remplissage de la feuille. Le programme créé la première ligne avec les noms des groupes, puis il créé chaque utilisateur ligne par ligne.
A chaque utilisateur, il cherche le groupe d’appartenance, sélectionné la colonne d’excel correspondante et renseigne “1” à l’intérieur.
Peut-être que la recherche et la sélection par le VB n’était pas supporté avant Excel 2007 ?!
Je n’ai pas le 2003 pour débugger.
Si tu veux t’y frotter, le VisualStudio Express est gratuit sur le site de Microsoft. Tu peux donc suivre le programme facilement. Enfin, si tu programmes un petit peu. Il suffira d’ouvrir le projet VisualStudio installé en même temps que le programme.
Bonjour,
Super interresé par ce script, j’ai systematiquement une erreur à l’execution: “Exception from HRESULT: 0x800A03EC”
J’execute depuis un poste XP SP3 avec Excel 2003…
Bonjour,
L’erreur est assez vague. Avez-vous essayé de debuggé à partir des sources ?
Comme ceci, à brule pour poing, c’est un handle qui est nul. Donc soit sur l’accès à l’AD, soit sur l’accès à Excel.
Dans le premier cas, cela peut être dépendant du framework. Pour ce programme, il faut le 4.0
Excel 2003, je n’ai pas testé. Cela fonctionne avec 2007 et 2010…
en reprenant les sources avec VStudio, j’ai mis en commentaire des essais de résultats sans Excel.
Il faudrait essayer sans Excel donc juste pour voir si cela vient d’une ou de l’autre partie.
Bon tests.
quelles différences par rapprot à csvde?
http://www.labo-microsoft.org/articles/win/csvde/#1
La différence est très rapide : Avec csvde, il faut retravailler les fichiers exportés. Par exemple le croisé des utilisateurs et des groupes que j’expose ici n’est pas aisé avec des fichiers de csvde.
Là c’est simple.
Par contre csvde permet plus de filtres que dans l’exemple ici. Avec mon utiltaire il faut travaillé un peu le code.
quels prérequis?
s’installes pas sous SBS 2003
Les prérequis sont Excel; J’ai fais les tests avec 2010 mais cela doit fonctionner avec 2007.
Et puis .Net 4.0 qui doit s’installer automatiquement s’il n’est pas sur la machine qui exécute l’install.