think-cell utilizza un colore di carattere errato
Problema
think-cell non utilizza il colore di testo principale definito nel modello di PowerPoint.
Soluzione
Questo problema era causato da un bug in PowerPoint. A partire dal mese di luglio 2017, Microsoft ha risolto il problema in Office 365 e Office 2016. La soluzione è stata applicata a Office 365 e alle edizioni Office 2016 Click-to-Run con l’aggiornamento alla Versione 1706 (Build 8229.2073). La soluzione per l’edizione basata su MSI di Office 2016 era inclusa in KB3203481.
Spiegazione e soluzione alternativa nel caso in cui il problema con la versione di Office non sia stato risolto
think-cell tenta di determinare il colore di carattere corretto in base ai colori di carattere forniti dal modello di PowerPoint. Le versioni di PowerPoint che contengono il bug comunicano a think-cell valori errati per il colore del carattere se nella diapositiva di livello superiore dello schema di diapositiva mancano alcuni segnaposto. È possibile riprodurre il problema senza think-cell.
Riproduzione senza think-cell
La macro seguente inserisce una nuova diapositiva con una casella di testo che mostra i valori del colore di carattere risultanti per ogni TextStyleLevel dello schema di diapositiva di PowerPoint. "TextStyleLevel[1]" mostra il colore di carattere principale fornito da PowerPoint.
- Aprire un file PowerPoint interessato dal problema e aprire l'editor VBA premendo Alt + F11.
- Nell'editor VBA selezionare la presentazione, quindi fare clic su Inserisci → Nuovo modulo
- Incollare la macro seguente, quindi chiudere l'editor VBA.
- Nella finestra presentazione PowerPoint, premere Alt + F8 per aprire la finestra Macro
- Selezionare l'opzione di dimostrazione, quindi fare clic su Esegui
Function AppendToTextRange(txtfrm2 As PowerPoint.TextFrame2) As Office.TextRange2
Set AppendToTextRange = _
txtfrm2.TextRange.Characters(txtfrm2.TextRange.Length + 1, 0)
End Function
Sub Demonstrate()
Dim pres As PowerPoint.Presentation
Set pres = ActivePresentation
Dim sld As PowerPoint.Slide
Set sld = pres.Slides.Add(pres.Slides.Count + 1, PowerPoint.ppLayoutBlank)
sld.Select
Dim mstr As PowerPoint.Master
Set mstr = sld.Design.SlideMaster
Dim shp As PowerPoint.Shape
Set shp = sld.Shapes.AddShape(Office.msoShapeRectangle, 50, 50, _
pres.PageSetup.SlideWidth / 2 - 50, pres.PageSetup.SlideHeight - 100)
shp.Fill.ForeColor.RGB = RGB(255, 255, 122) 'light yellow backgound
Dim txtfrm2 As PowerPoint.TextFrame2
Set txtfrm2 = shp.TextFrame2
Dim txtrng2 As Office.TextRange2
Dim i As Integer
i = 1
Dim txtlvl As PowerPoint.TextStyleLevel
For Each txtlvl In mstr.TextStyles(PowerPoint.ppBodyStyle).Levels
Set txtrng2 = AppendToTextRange(txtfrm2)
txtrng2.Text = "TextStyleLevel[" & i & "] has color " & vbCr
txtrng2.Font.Fill.Solid
txtrng2.Font.Fill.ForeColor.ObjectThemeColor = Office.msoThemeColorText1
Set txtrng2 = AppendToTextRange(txtfrm2)
Dim col As PowerPoint.ColorFormat
Set col = txtlvl.Font.Color
If PowerPoint.ppSchemeColorMixed = col.Type Then
txtrng2.Text = "MIXED (should not occur)" & vbCr & vbCr
Else
If Office.msoNotThemeColor = col.ObjectThemeColor Then
Dim nRgb As Long
nRgb = col.RGB()
txtrng2.Text = "RGB: " & (nRgb Mod 256) & "/" & ((nRgb \ 256) _
Mod 256) & "/" & (nRgb \ 256 \ 256) & vbCr & vbCr
txtrng2.Font.Fill.ForeColor.RGB = nRgb
Else
txtrng2.Text = "ObjectThemeColor: " & col.ObjectThemeColor _
& vbCr & vbCr
txtrng2.Font.Fill.ForeColor.ObjectThemeColor = col.ObjectThemeColor
End If
End If
i = i + 1
Next txtlvl
End Sub
Soluzione alternativa
Inserire i segnaposto mancanti nello schema di diapositiva della presentazione PowerPoint:
- Aprire lo schema di diapositiva: PowerPoint → Visualizza → Visualizzazioni master → Schema di diapositiva
- Passare alla diapositiva di livello superiore nella barra laterale delle miniature.
- Nella maggior parte dei casi, è possibile risolvere il problema inserendo il segnaposto Testo e/o Titolo mancante:
Layout Schema diapositiva → Layout Schema diapositiva → selezionare Testo e/o Titolo→ OK - Chiudere lo schema di diapositiva: Chiudi → Chiudi visualizzazione master
- Inserire un nuovo grafico o aggiornare i grafici esistenti, ad esempio trascinandoli in una nuova posizione.
Se il problema persiste, ripetere i passaggi, ma selezionare tutti i segnaposto mancanti durante il passaggio 3. I modelli o le presentazioni possono contenere più di uno schema di diapositiva interessati. Applicare la soluzione alternativa a tutti gli elementi interessati.
Si consiglia di inserire questa soluzione alternativa nel modello di PowerPoint o di contattare la persona responsabile dei modelli di PowerPoint in modo che aggiorni il modello predefinito.
Se la società ha un contratto di assistenza Microsoft Office e si desidera chiedere a Microsoft di correggere anche la propria versione di Office, fare riferimento al nostro caso Microsoft numero 116080514511540.
Contattare l'assistenza
Se think-cell non utilizza il colore di carattere corretto anche quando si usa una versione di Office corretta o quando è stata applicata la soluzione alternativa, inviare una diapositiva campione a il nostro team di assistenza indicando il colore di carattere desiderato.