KB0206: thinkcell usa un colore del carattere errato
- Home
- Risorse
- Knowledge base
- KB0206
Problema
thinkcell non usa il colore del testo principale definito nel modello di PowerPoint.
Soluzione
Il problema era causato da un bug in PowerPoint. A luglio 2017, Microsoft ha corretto il problema in Office 365 e Office 2016. Office 365 e le edizioni Office 2016 A portata di clic hanno ricevuto la correzione con l'aggiornamento alla Versione 1706 (Build 8229.2073). La correzione per l'edizione di Office 2016 basata su MSI è stata inclusa in KB3203481.
Spiegazione e soluzione alternativa se la versione di Office non è stata corretta
thinkcell tenta di determinare il colore del carattere corretto in base ai colori del carattere forniti dal modello di PowerPoint. Le versioni di PowerPoint che contengono il bug comunicano a thinkcell valori errati per il colore del carattere se alcuni segnaposto mancano nella diapositiva di livello superiore dello schema diapositiva. Questo problema può essere riprodotto senza thinkcell. Scopri di più
Riproduzione senza thinkcell
La macro seguente inserisce una nuova diapositiva con una casella di testo che mostra i valori risultanti del colore del carattere per ogni TextStyleLevel dello schema diapositiva di PowerPoint. "TextStyleLevel[1]" mostra il colore del carattere principale fornito da PowerPoint.
- Aprire un file PowerPoint interessato e aprire l'editor VBA con Alt + F11
- Nell'editor VBA, selezionare la presentazione e fare clic su Insert > New module
- Incollare la macro seguente e chiudere l'editor VBA
- Nella finestra della presentazione di PowerPoint, premere Alt + F8 per aprire la finestra Macro
- Selezionare Demonstrate e fare clic su Run
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) 'sfondo giallo chiaro
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 & "] ha il colore " & 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 = "MISTO (non dovrebbe verificarsi)" & 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 diapositiva della presentazione PowerPoint:
- Aprire lo schema diapositiva: PowerPoint > View > Master Views > Slide Master
- Passare alla diapositiva di livello superiore nella barra laterale delle anteprime
- Nella maggior parte dei casi, il problema può essere risolto inserendo il segnaposto Text e/o Title mancante:
Master Layout > Master Layout > selezionare Text e/o Title> OK - Chiudere lo schema diapositiva: Close > Close Master View
- Inserire un nuovo grafico o aggiornare i grafici esistenti, ad esempio trascinandoli in una nuova posizione
Se il problema si verifica ancora in seguito, ripetere questi passaggi selezionando però tutti i segnaposto mancanti nel passaggio 3. I modelli o le presentazioni possono contenere più di uno schema diapositiva interessato; applicare la soluzione alternativa a tutti.
È possibile includere questa soluzione alternativa nel modello di PowerPoint oppure contattare la persona responsabile dei modelli di PowerPoint per aggiornare il modello predefinito.
Se l'azienda dispone di un contratto di supporto Microsoft Office e si desidera chiedere a Microsoft di correggere anche la versione di Office in uso, fare riferimento al nostro numero di caso Microsoft 116080514511540.
Contatta il supporto
Se thinkcell continua a non usare il colore del carattere corretto anche se si usa una versione di Office corretta o è stata applicata la soluzione alternativa, inviare una diapositiva di esempio a il nostro team di assistenza e indicare il colore del carattere preferito.