Texto em negrito em planilhas do excel

0

Temos uma planilha com 2 guias, 1 é para uso interno e a outra é a cópia do cliente. Nós codificamos todos os custos e descrições na cópia interna e isso é preenchido para a cópia do cliente. Minha pergunta é que eu gostaria de informações de alta luz na descrição por texto em negrito ou sublinhando as palavras, eu posso fazer isso na cópia interna, mas isso não reflete isso para a cópia do cliente

Esta é a fórmula que está na célula na cópia do cliente    = IF ('USO INTERNO'! H13 = 0, "", 'USO INTERNO'! H13)
Somos capazes de fazer isso e, em caso afirmativo, o que eu preciso adicionar à fórmula para fazer isso

Obrigado Kylie

    
por Kylie 29.06.2017 / 04:41

1 resposta

0

Não vejo uma maneira fácil de fazer isso. Como um MVP do MS Excel diz :

Formulas and Functions can return result only. They cannot change or copy formatting.

Existem 2 soluções possíveis para o seu problema que posso ver:

1 Formatação condicional

Se as células de origem estiverem sendo formatadas com formatação condicional , aplique as mesmas regras às células de destino.

2 scripts em VBA

Este usuário fornece alguns scripts e instruções úteis do VBA para outro usuário sobre como fazer exatamente isso, mas não é simples e exigirá ajustes para atender às suas necessidades.

Place the following code in a standard module:

Public Sub CopyFormat(rng As Range)
On Error Resume Next
If rng.Value = "" Then Exit Sub
If Left(rng.Value, 1) = "#" Then
    Ref = Mid(rng.Value, 2, Len(rng.Value) - 1)
    Range(Ref).Copy
    rng.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
        , SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    rng.Formula = "=" & Ref  'COMMENT OUT IF REFERRED CELL VALUE NOT REQUIRED
    'rng.Value = ""  'ACTIVATE IF REFERRED CELL VALUE NOT REQUIRED
End If
End Sub

Place the following code in the Worksheet_Change event routine of each sheet:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
CopyFormat Target
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Worksheets("Hidden")
On Error Resume Next
Application.EnableEvents = False
    Range(.Range("Z1").Value).Copy
    Range(.Range("Z1").Value).Dependents.Select
Application.EnableEvents = True
If Err = 0 Then
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
End If
.Range("Z1") = Target.Address
End With
Application.CutCopyMode = False
End Sub

In the calling cell enter the formula but replace the "=" with a pound sign "#" (without the quotes):

Instead of the formula for A5 being =A1 it will be #A1 Instead of the formula for Sheet2 cell A1 being =Sheet1!A1, it will be #Sheet1!A1

It can be used to carry the value and the formatting from cell to cell on the same sheet or between different sheets. It will also carry the comment from the referred cell as well. If you want to copy just the formatting without the value then change rng.formula = "=" & Ref to Rng.value = ""

    
por 29.06.2017 / 08:30