Macro excel liste des cellules et plages nommées d’un classeur excel

Une petite macro vraiment intéressante.

Explication  : La macro suivante liste les cellules et les plages nommées, dans l’ordre d’index des feuilles, et crée une table des matières avec liens hypertextes.

Attention à  l’exécuter sur une feuille vierge  !

Sub ListeNoms_OrdreFeuilles()
    Dim N As Name
    Dim PlageNom As Range
    Dim i As Byte
    Dim NumLigne As Byte
    Cells(1, 1) = "NAME"
    Cells(1, 2) = "VALUE"
    Cells(1, 3) = "SHEET"
    Cells(1, 4) = "ADDRESS"
    Cells(1, 5) = "LINK"
    NumLigne = 2
    On Error Resume Next
    For i = 1 To Worksheets.Count
        For Each N In Worksheets(i).Parent.Names
            Set PlageNom = Nothing
            Set PlageNom = N.RefersToRange
            If Not PlageNom Is Nothing Then
                If Worksheets(i).Index = PlageNom.Worksheet.Index Then
                    Cells(NumLigne, 1) = N.Name
                    Cells(NumLigne, 2) = N.RefersToRange.Value
                    Cells(NumLigne, 3) = N.RefersToRange.Worksheet.Name
                    Cells(NumLigne, 4) = N.RefersToRange.Address(external:=False)
                    'pour un lien relatif
                    Worksheets(1).Hyperlinks.Add Anchor:=Cells(NumLigne, 5), _
                    Address:="", SubAddress:=N.RefersToRange.Worksheet.Name + "!" + N.RefersToRange.Address(external:=False)
                    'pour un lien absolu
                    'Worksheets(1).Hyperlinks.Add Anchor:=Cells(NumLigne, 5), _
                    Address:="", SubAddress:=N.RefersToRange.Address(external:=True)
                    NumLigne = NumLigne + 1
                End If
            End If
        Next N
    Next i
End Sub


Import et mappage de xml dans fichier excel 2010

Il est intéressant d’importer des fichiers xml dans un fichier excel pour les consulter et travailler sur leurs données.

Pour ce faire il vous faut

Voici une macro qui lié à  un bouton vous permet de mettre à  jour les données du fichier excel à  partir d’un xml qui respecte le mappage créé ci-dessus et dont l’url est connu dans par exemple  la cellule excel de votre classeur que l’on nommera « xmlUrl »

Sub updtXml()
    'pour utiliser cette fonction il faut dans un premier temps importer des mappages dans le fichier excel
    'cf doc http://msdn.microsoft.com/fr-fr/library/office/gg469857.aspx
    'recuperation url de base du xml
    xmlUrl = Range("xmlUrl").Value
    'Mise à  jour du mappage : monMappage
    'monMappage est le nom du mappage que vous avez importé dans le tuto ci-dessus
    ActiveWorkbook.XmlMaps("monMappage").Import URL:= _
    xmlUrl _

End Sub