0

Ich muss die Transparenz von Text in einer Form über VBA einstellen, in der Tat muss ich die Transparenz für die gesamte Form einstellen, aber es ist der Text, bei dem ich feststecke.Powerpoint 2016 Texttransparenz

Ich kann einfach nicht scheinen, das Objektmodell zu navigieren

die Transparenz der Immobilie finden
Function SetTransparency(Value As Single) 
On Error GoTo AbortNameShape 

If ActiveWindow.Selection.ShapeRange.Count = 0 Then 
    MsgBox "No Shapes Selected" 
    Exit Function 
End If 

With ActiveWindow.Selection.ShapeRange 
    .Fill.Transparency = Value 
    .Line.Transparency = Value 
    .TextFrame.TextRange. **HELP** .Transparency = Value 
    End With 
AbortNameShape: 
MsgBox Err.Description 

End Function 

Google hat mir

.TextFrame.TextRange.Characters.Font.Fill.Transparency 

Von https://www.mrexcel.com/forum/excel-questions/510589-transparent-text-shapes-textbox-1-a.html

gegeben Aber das schlägt auf die .Fill Eigenschaft von Font Objekt nicht vorhanden. Ich gehe davon aus, dass MS das Objektmodell in den 10 Jahren, die seit der Antwort gegeben wurden, geändert hat, aber ich stecke für einen aktuellen Ansatz fest.

Dank

Antwort

1

Versuchen Sie, diese (nur für das erste Mitglied der aktuellen Auswahl)

With ActiveWindow.Selection.ShapeRange(1) 
    With .TextFrame2.TextRange.Font.Fill 
     .Transparency = 0.5 
    End With 
End With 

Wenn Sie durch alle Formen in der aktuellen Auswahl iterieren möchten, werden Sie jeder testen möchten Form, um zu sehen, ob .HasTextFrame und .TextFrame.HasText true sind, bevor Sie versuchen, mit dem Text zu arbeiten.

+0

Vielen Dank, wissen Sie, warum Font.Fill als Kind von TextFrame2, nicht aber von TextFrame funktioniert? Diese Information war aus MS überhaupt nicht ersichtlich! –

+0

In früheren Versionen von PowerPoint konnten wir Font.Fill (nur Font.Color) nicht angeben. Als MS eine Reihe neuer Text-/Schrifteffekte hinzufügte, stellten sie ein TextFrame2-Objekt bereit, um auf die neuen Effekte zuzugreifen, behielten aber den alten TextFrame für Kompatibilitätszwecke bei. Und Sie haben Recht: Klarheit ist nicht die Stärke der MS-Dokumentation. –

Verwandte Themen