Accueil Médias sociaux Création d'un rapport de nom avec le code VBA - dummies

Création d'un rapport de nom avec le code VBA - dummies

Table des matières:

Vidéo: Créer un formulaire personnalisé pour saisir des données sur Excel 2025

Vidéo: Créer un formulaire personnalisé pour saisir des données sur Excel 2025
Anonim

Si vous utilisez beaucoup de cellules et de plages nommées dans votre classeur, vous serez peut-être surpris de découvrir qu'Excel ne fournit aucun moyen de lister les détails de chaque nom. Des informations utiles apparaissent dans la boîte de dialogue Gestionnaire de noms, mais il n'existe aucun moyen d'afficher ces informations d'une manière qui peut être imprimée.

Le code VBA proposé ici génère un rapport utile décrivant les noms définis dans n'importe quel classeur.

Exemple de rapport

Ici, vous voyez un exemple de rapport de nom.

Le rapport, créé dans une nouvelle feuille de calcul, contient les informations suivantes pour chaque nom:

  • Nom: Le nom.

  • RefersTo: La définition du nom. Habituellement, ce sera une cellule ou une plage, mais un nom peut également définir une formule.

  • Cellules: Nombre de cellules contenues dans la plage nommée. Pour les formules nommées, ce champ affiche # N / A.

  • Champ d'application: Portée du nom - soit Classeur, soit nom de la feuille de calcul spécifique sur laquelle le nom est valide.

  • Masqué: Vrai si le nom est caché. Les noms masqués sont créés par certains compléments (tels que le solveur) et n'apparaissent pas dans la boîte de dialogue Gestionnaire de nom.

  • Erreur: Vrai si le nom contient une référence erronée.

  • Lien: Lien hypertexte qui, lorsqu'il est cliqué, active la plage nommée. Seuls les noms qui se réfèrent à des cellules ou des plages incluent un lien.

  • Commentaire: Commentaire du nom, le cas échéant.

Le code VBA

Pour utiliser ce code, appuyez sur Alt + F11 pour activer Visual Basic Editor. Choisissez ensuite Insérer → Module pour insérer un nouveau module VBA. Copiez le code et collez-le dans le nouveau module.

Sub GenerateNameReport () 'Génère un rapport pour tous les noms dans le classeur' (N'inclut pas les noms de table) Dim n As Nom Dim Row As Long Dim CellCount As Variante 'Quitter si aucun nom Si ActiveWorkbook. Des noms. Count = 0 Then MsgBox "Le classeur actif n'a pas de noms définis. "Exit Sub End If" Quitter si le classeur est protégé Si ActiveWorkbook. ProtectStructure Then MsgBox "Impossible d'ajouter une nouvelle feuille car le classeur est protégé. "Exit Sub End If" Insère une nouvelle feuille pour le rapport ActiveWorkbook. Des feuilles de calcul. Ajouter ActiveSheet. Déplacer après: = Feuilles (ActiveWorkbook, Feuilles, Décompte) ActiveWindow. DisplayGridlines = False 'Ajouter la première ligne du titre Range ("A1: H1"). Fusionner avec la plage ("A1"). Valeur = "Nom du rapport pour:" & ActiveWorkbook. Prénom. Police de caractère. Taille = 14. Font. Gras = Vrai. HorizontalAlignment = xlCenter End With 'Ajouter une deuxième ligne de titre Range ("A2: H2"). Fusionner avec la plage ("A2"). Valeur = "Généré" et maintenant. HorizontalAlignment = xlCenter End With 'Ajouter les en-têtes Range ("A4: H4") = Array ("Nom", "RefersTo", "Cellules", _ "Scope", "Caché", "Erreur", "Lien", " Commentaire ")" Boucle à travers les noms Row = 4 Sur erreur Resume Suivant pour chaque n Dans ActiveWorkbook.Noms Row = Row + 1 'Colonne A: Nom Si n. Nom Comme "*! * "Then Cells (Row, 1) = Split (n ° Nom,"! ") (1) 'Supprimer le nom de la feuille Else Cells (Row, 1) = n. Nom Fin Si 'Colonne B: RefersTo Cells (Row, 2) = "'" & n. RefersTo 'Colonne C: Nombre de cellules CellCount = CVErr (xlErrNA)' Renvoie la valeur de la formule nommée CellCount = n. RefersToRange. CountLarge Cells (Row, 3) = CellCount 'Colonne D: Portée Si n. Nom Comme "*! * "Then Cells (Row, 4) = Split (n ° Nom,"! ") (0) 'extrait le nom de la cellule Cells (Row, 4) = Replace (Cells (Row, 4),"' "," ") 'remove apostrophes Else Cells (Row, 4) = "Cahier de travail" Fin Si' Colonne E: Caches d'état masqués (Ligne, 5) = Non n. Colonne F visible: Nom erroné Cells (Row, 6) = n. RefersTo Like "* [#] REF! * "'Colonne G: Lien hypertexte si pas d'application. IsNA (Cells (Row, 3)) puis ActiveSheet. Hyperliens Add _ Anchor: = Cells (Row, 7), _ Adresse: = "", _ SubAddress: = n. Nom, _ TextToDisplay: = n. Nom Fin Si 'Colonne H: cellules de commentaire (ligne, 8) = n. Commenter Suivant n 'Convertir en une table ActiveSheet. ListObjects. Ajoutez _ SourceType: = xlSrcRange, _ Source: = Range ("A4"). CurrentRegion 'Ajuste les colonnes Colonnes Larges ("A: H"). Colonne entière. AutoFit End Sub

Génération d'un rapport

Exécutez la procédure GenerateNameReport et le rapport est généré sur une nouvelle feuille de calcul dans le classeur actif. Le code ne doit pas être dans le classeur qui contient les noms pour le rapport.

Si vous trouvez ce code utile, vous pouvez le stocker dans votre classeur de macros personnel ou créer un complément.

Création d'un rapport de nom avec le code VBA - dummies

Le choix des éditeurs

En intégrant le cyclisme dans votre routine - les mannequins

En intégrant le cyclisme dans votre routine - les mannequins

Avec un peu de réflexion, le cyclisme s'adapte facilement à votre emploi du temps. Faites de l'exercice sain et économisez du temps et de l'argent. Voici quelques conseils pour faire du cyclisme une partie de votre routine hebdomadaire: Ce n'est pas tout ou rien: vous n'avez pas besoin de faire la navette tous les jours si cela vous semble trop long. Prévoyez ...

Rassemblement Matériel essentiel pour les promenades à vélo - mannequins

Rassemblement Matériel essentiel pour les promenades à vélo - mannequins

Les choses peuvent parfois mal tourner en vélo pour transporter avec vous quelques pièces simples de sorte que vous puissiez faire face aux problèmes que vous êtes le plus susceptible de rencontrer. Pour les longs trajets, vous aurez besoin de quelques extras pour tirer le meilleur parti de votre voyage. ...

S'entraîner avec des équipements de cyclisme - des mannequins

S'entraîner avec des équipements de cyclisme - des mannequins

Comme toute activité, vous devez rassembler certaines pièces d'équipement pour obtenir le plus du cyclisme et de rester en sécurité pendant que vous le faites. Assurez-vous que les pièces suivantes sont sur votre liste de courses lorsque vous sortez pour acheter votre vélo: Casque: Le port du casque n'est pas obligatoire mais la plupart des gens ...

Le choix des éditeurs

En utilisant le menu Select pour affiner les sélections dans Photoshop Elements 9 - les nuls

En utilisant le menu Select pour affiner les sélections dans Photoshop Elements 9 - les nuls

Vous pouvez utiliser le Sélectionnez le menu dans Photoshop Elements pour modifier et affiner les sélections en agrandissant, en réduisant, en adoucissant, en inversant, en agrandissant et en saisissant des pixels de même couleur. Sélectionner tout ou rien Les commandes Sélectionner tout et Désélectionner sont des commandes simples. Pour sélectionner tout dans votre image, choisissez Sélectionner → Tout ou appuyez sur Ctrl + A (cmd + A sur le Mac). Pour ...

Afficher plusieurs documents dans Photoshop Elements 10 - des mannequins

Afficher plusieurs documents dans Photoshop Elements 10 - des mannequins

Pour travailler sur n'importe quelle image dans l'un des éditeurs. Vous devez vous familiariser avec le déplacement de l'interface Éléments et l'affichage des photos dans la fenêtre principale de l'image. En mode Édition complète, vous remarquerez que lorsque plusieurs images sont ouvertes, leurs noms de fichiers sont répertoriés en haut de la fenêtre d'image. ...

Travaillant avec Adobe Premiere Elements - les mannequins

Travaillant avec Adobe Premiere Elements - les mannequins

Plusieurs options dans les panneaux Partager et Créer nécessitent Adobe Premiere Elements. Les éléments dénommés Graver DVD vidéo / BluRay, Partage vidéo en ligne et Téléphones mobiles et lecteurs requièrent tous Adobe Premiere Elements. Si l'un de ces éléments vous intéresse, vous pouvez télécharger un essai gratuit d'Adobe Premiere Elements et utiliser ...

Le choix des éditeurs

Cisco Networking: Connexion via un câble de survol - Les nuls

Cisco Networking: Connexion via un câble de survol - Les nuls

Vous permettent probablement de configurer votre appareil Cisco une connexion directe par câble série via un câble Cisco de survol - le câble bleu étrange que vous obtenez avec chacun de vos périphériques gérés, comme indiqué dans l'illustration suivante. Pour utiliser ce câble, vous devez avoir un port série à 9 broches sur ...

Cisco Networking: conversion binaire en base 16 (hexadécimal) - nuls

Cisco Networking: conversion binaire en base 16 (hexadécimal) - nuls

La conversion de binaire Base 16 (hexadécimal) est plus facile que la conversion binaire en décimal. La chose la plus étrange à propos de l'hexadécimal est qu'il y a plus de dix nombres (zéro à neuf), donc vous devez utiliser les caractères supplémentaires suivants: A (10), B (11), C (12), D (13), E (14) et F (15) ...

Cisco Networking: Convertir binaire en base 8 (octal) - mannequins

Cisco Networking: Convertir binaire en base 8 (octal) - mannequins

Conversions binaires en octales sont en fait assez facile, plus facile que binaire à base de conversion 10. Cela est dû au fait que les nombres octaux peuvent être gérés en regroupant simplement vos nombres binaires en ensembles de trois. Par exemple, commencez par le nombre binaire 11010011 de la section précédente, résultat de la conversion de ...