VBA : Publier sur Intranet



Classeur entier ou sélection de cellule, il est assez simple de convertir automatiquement en HTML des données d’Excel pour les publier dans votre navigateur Web préféré…


- 1 – Dans ce premier exemple une simple conversion d'une plage de cellule en html.
Sub PublierSurIntranet()
Dim MaPageWeb As PublishObject
'creation de l'objet qui contiendra la page web
Set MaPageWeb = ActiveWorkbook.PublishObjects.Add( _
SourceType:=xlSourceRange, _
Filename:="c:\publication\testpublication.html", _
Sheet:="Mabase", _
Source:="A1:G15", _
HtmlType:=xlHtmlStatic, _
Title:="Liste des Stagiaires")
'Sourcetype = Ici le type de données est un ensemble de cellules
'Filename = le classeur est converti en html dans le chemin réseau indiqué
'Sheet = nom de l'onglet de la feuille à convertir
'Source = adresse de la plage à convertir
'HtmlType=Indication s'il s'agit d'un objet statique ou d'un composant office Web
'Title = Titre de la page + balise
With MaPageWeb
.Publish (True)
'publication de la page
.AutoRepublish = True
'repercute l'enregistrement du classeur sur la page web
End With
End Sub

- 2 – Dans ce second exemple c'est l'ensemble du classeur qui est converti en html, puis on ouvre directement le fichier html dans Internet Explorer
Sub PublierSurIntranet2()
Dim appIE
Dim MaPageWeb2 As PublishObject
Dim chemin As String
'la conversion s'effectue dans le chemin réseau du classeur
chemin =ThisWorkbook.Path & "/testpublication2.html"
Set MaPageWeb2 =ActiveWorkbook.PublishObjects.Add _
(xlSourceWorkbook, chemin _
, , , xlHtmlStatic, , "Liste des Stagiaires")
With MaPageWeb2
.Publish (True)
End With
'Pour ouvrir ie une bonne vieille commande Shell, « les anciens me comprendrons… »
appIE = Shell("C:\Program Files\Internet Explorer\iexplore.exe " & chemin, vbNormalFocus)
End Sub



0 commentaires:

Enregistrer un commentaire

top