Problème : PublishObjects

  • Initiateur de la discussion Initiateur de la discussion pacoako
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pacoako

XLDnaute Occasionnel
Bonjour à tous!

J'ai une petite question pour vous chers lecteurs.. Je cherche à comprendre un peu comment Excel fonctionne au niveau de la command PublishObjects... j'ai remarqué que lorsque j'enregistre une macro et que je sauvegarde mon document en format htm, j'obtient le code ci-dessous. (code que j'ai modifié quelque peu)

Code:
    With ActiveWorkbook.PublishObjects("Agents - Statistiques_29018")
        .Title = ""
        .Filename = RapportPath & "Statistiques Globales - " & Range("A2") & " à " & Range("A4") & ".htm"
        .Publish (True)
        .AutoRepublish = False
    End With

Le nom de ma feuille est bien "Agents - Statistiques"... alors je me demandais d'où venait le # 29018 après?... il semblerait que ce numéro est différent dépendemment de la feuille que je veux "Publish".. Alors ma question est vraiment, comment savoir quel est le numéro correspondant à ma feuille? et qu'arrive-t-il si je créer une nouvelle feuille et que je veux la publish? Comment dois-je faire pour savoir quel le numéro de ma nouvelle feuille?..

Alors si jamais quelqu'un a une piste.. vous êtes le bienvenue!! =)

Merci à tous! A++
 
Re : Problème :vbscript PublishObjects

BONJOUR
j'ai le même problème,
a quoi correspond ce numéro 20367 rajouté.
car si je change le nom du classeur la macro ne fonctionne plus ?

ActiveWorkbook.PublishObjects("Billard_defis_tests_news_20367")
 
Re : Problème : PublishObjects

Bonjour pacoako, Rogers,

N'utilisant pas cette option dans Excel, je vais peut-être dire une grosse bêtise (au moins on est prévenu 😉

Il y a moyen avec le code suivant de parcourir la collection de "PublishObjects" du classeur :
Code:
Sub test()
Dim curPublishObject As PublishObject

    'parcourrir tous les "PublishObjects" de ce classeur
    For Each curPublishObject In ThisWorkbook.PublishObjects
    
        MsgBox curPublishObject.Title
        MsgBox curPublishObject.DivID
        MsgBox curPublishObject.Filename
        MsgBox curPublishObject.Source
        
    Next curPublishObject
End Sub

c'est à partir de maintenant que c'est du "free style" :
on pourrait imaginer un test du genre
Code:
Sub test()
Dim curPublishObject As PublishObject

    'parcourrir tous les "PublishObjects" de ce classeur
    For Each curPublishObject In ThisWorkbook.PublishObjects
    
        'tester si le "PublishObject" courant est le bon
        [COLOR=Red][B]If curPublishObject.Title = ThisWorkbook.Name Then[/B][/COLOR]
            'si c'est le cas, publier
            With curPublishObject
                .Title = ""
                .Filename = RapportPath & "Statistiques Globales - " & Range("A2") & " à " & Range("A4") & ".htm"
                .Publish (True)
                .AutoRepublish = False
            End With
        End If
        
    Next curPublishObject
End Sub
la ligne en rouge est sûrement mauvaise et à adapter (en fonction des propriétés des "PublishObjects" affichés avec la première macro.

a+
 
Re : Problème : PublishObjects

Pour éviter le problème du n° attribué par l'objet PublishObject, j'utilise le code ci dessous : avec PublishObject.Add
ça marche très bien, mais j'ai installé le classeur et la macro sur un autre ordinateur et là j'obtiens un message d'erreur :
La méthod Publish de l'objet Publish0bject a échouée ??
Alors j'essaie de comprendre pourquoi .?


Application.Goto Reference:="Print_Area"
With ActiveWorkbook.PublishObjects.Add(xlSourcePrintArea, "C:\feuillematchs.mht" _
, "extraire", "", xlHtmlStatic, "", "")
.Title = "LE TABLEAU DE VOS MATCHS"
.Publish (True)
.AutoRepublish = False
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
645
Retour