Klasse PublishObject - ein Element in einer Arbeitsmappe (Excel VBA)

Die Klasse PublishObject stellt ein Element in einer Arbeitsmappe dar, das auf einer Webseite gespeichert wurde und entsprechend den Werten aktualisiert werden kann, die durch die Eigenschaften und Methoden des PublishObject -Objekts angegeben werden. Um eine PublishObject -Klassenvariable zu verwenden, muss sie zuerst instanziert werden, beispielsweise


Dim pblobj as PublishObject
Set pblobj = ActiveWorkbook.PublishObjects(Index:=1)

For Each

Hier ist ein Beispiel für die Verarbeitung der PublishObject -Elemente in einer Sammlung


blnChartFound = False 
For Each objPO In Workbooks(1).PublishObjects 
 If objPO.SourceType = xlSourceChart Then 
 strFirstPO = objPO.Source 
 blnChartFound = True 
 Exit For 
 End If 
Next objPO

AutoRepublish

Wenn eine Arbeitsmappe gespeichert wird, bestimmt Microsoft Excel, ob ein Element in der PublishObjects -Auflistung die AutoRepublish -Eigenschaft auf truefestgelegt ist, und wenn dies der Fall ist, wird es erneut veröffentlicht.


ActiveWorkbook.PublishObjects(1).AutoRepublish = True

Delete

Löscht das Objekt.


ActiveWorkbook.PublishObjects(1).Delete

DivID

Gibt den eindeutigen Bezeichner zurück, der zum Identifizieren

eines HTML-Tags auf einer Webseite verwendet wird.


Dim strDivID As String
strDivID = ActiveWorkbook.PublishObjects(1).DivID

Filename

Gibt die URL (im Intranet oder im Web) oder den Pfad (lokal oder Netzwerk) an den Speicherort zurück, an dem das angegebene Quellobjekt gespeichert wurde, oder legt diese fest.

Die filename -Eigenschaft generiert einen Fehler, wenn ein Ordner im angegebenen Pfad nicht vorhanden ist.


ActiveWorkbook.PublishObjects(1).FileName = _ 
 "\\Server2\Q1\StockReport.htm"

HtmlType

Gibt den von Microsoft Excel generierten HTML-Typ zurück, wenn Sie das angegebene Element auf einer Webseite speichern.


ActiveWorkbook.PublishObjects(1).HtmlType = xlHtmlStatic

Publish

Speichert ein Element oder eine Sammlung von Elementen in einem Dokument auf einer Webseite.

Die filename -Eigenschaft gibt den Speicherort und den Namen der HTML-Datei zurück oder legt diesen fest.

Publish (Create)

Create: Ist eine HTML-Datei vorhanden, wird die Datei ersetzt, wenn dieses Argument auf True festgelegt wird; das Element oder die Elemente werden am Ende der Datei eingefügt, wenn dieses Argument auf False festgelegt wird.


With ActiveWorkbook.PublishObjects.Add(xlSourceRange, _ 
 "\\Server1\sharedfolder\Stockreport.htm", "First Quarter", _ 
 "$D$5:$D$9", xlHtmlStatic, "Book2_25082", "") 
 .Publish (True) 
 .AutoRepublish = True 
End With

Sheet

Gibt den Namen des Blatts für das angegebene PublishObject-Objekt zurück.


Dim strSheet As String
strSheet = ActiveWorkbook.PublishObjects(1).Sheet

Source

Gibt einen Variant-Wert zurück, der den eindeutigen namen darstellt, der Elemente mit einem Eigenschaftswert der SourceType.-Eigenschaft von xlSourceRange, xlSourceChart, xlSourcePrintArea, xlSourceAutoFilter, xlSourcePivotTable oder xlSourceQuery aufweisen.

Wenn die SourceType-Eigenschaft auf xlSourceRange festgelegt ist, gibt diese Eigenschaft einen Bereich zurück, bei dem es sich um einen definierten Namen handeln kann.


Dim strSource As String
strSource = ActiveWorkbook.PublishObjects(1).Source

SourceType

Gibt einen XlSourceType -Wert zurück, der den Typ des veröffentlichten Elements darstellt. Mögliche Rückgabewerte sind xlSourceAutoFilter - Ein AutoFilter Bereich, xlSourceChart - Ein Diagramm, xlSourcePivotTable - Ein PivotTable-Bericht, xlSourcePrintArea - Ein für den Druck ausgewählter Zellbereich, xlSourceQuery - Eine Abfragetabelle (externer Datenbereich), xlSourceRange - Ein Zellbereich, xlSourceSheet - Gesamtes Arbeitsblatt, xlSourceWorkbook - Eine Arbeitsmappe.


Dim xstSourceType As XlSourceType
xstSourceType = ActiveWorkbook.PublishObjects(1).SourceType

Title

Gibt den Titel der Webseite zurück oder legt ihn fest, wenn das Dokument als Webseite gespeichert wird.

Der Titel wird normalerweise in der Titelleiste des Fensters angezeigt, wenn das Dokument im Webbrowser angezeigt wird.


Workbooks(1).PublishObjects(1).Title = "Sales Forecast"