Formate um número como uma porcentagem (x100) sem o símbolo%

2

Isso é o oposto da pergunta Formato numérico em excel: Mostrando o valor% sem multiplicar por 100 .

Eu tenho dados que estão em um formato onde, por exemplo, uma célula cujo conteúdo bruto é 0,75 "significa" 75%. Estou configurando um processo para transferir esses dados para outro programa (Adobe Illustrator) que dispara se os números contiverem qualquer símbolo (até%).

Eu gostaria de fazer sem modificações no conteúdo ou na estrutura da planilha , portanto, sem novas colunas e sem alterações nos dados subjacentes. Obviamente, sem essa limitação, adicionar uma coluna com uma fórmula como =A1*100 seria muito fácil. Eu quero evitar isso porque essas folhas são complexas, elas são mantidas por uma equipe diferente da pessoa que está fazendo esse processo, e eu não quero que a pessoa que está fazendo esse processo mude o conteúdo real da planilha além de uma mudança de apresentação facilmente reversível. como um novo formato numérico.

Existe algum formato numérico ou modificação de camada de apresentação semelhante que me permita pegar dados armazenados como 0.75, 0.5, 0.25 e copiar e colar em outro aplicativo como 75, 50, 25 ?

O formato de número "Porcentagem" mágico, que multiplica por 100, parece estar listado em formatos personalizados como 0.00% , mas a simples remoção do % também remove a multiplicação.

Eu encontrei um blog (Chandoo) que sugere que usa um formato como #,#.# [ctrl-J] % para ocultar o sinal de porcentagem abaixo de uma nova linha, mas isso não funciona para mim, pois preciso de uma saída limpa para o aplicativo meus usuários copiarão e colarão a saída em.

    
por user568458 07.12.2015 / 18:55

2 respostas

1

Você pode usar essa macro para realizar o trabalho. Mas primeiro, você deve adicionar uma referência à biblioteca do Microsoft Forms 2.0. Pressione Alt + F11 para abrir o Editor do Visual Basic e clique em Ferramentas > > Referências ... Role para baixo até ver Microsoft Forms 2.0 Object Library , marque a caixa ao lado e clique em OK. Se você não vê-lo (eles estão listados em ordem alfabética), você precisará adicioná-lo através da dll. Clique em Browse ... e procure e adicione C:\Windows\System32\FM20.DLL .

Uso: selecione o intervalo (você pode selecionar a coluna inteira) e invoque a macro por meio de qualquer método que seja mais fácil para o usuário. Após a execução da macro, os dados estarão na área de transferência. Você pode criar um botão, atribuir uma tecla de atalho ou executá-lo manualmente através da faixa de opções. Estou assumindo que os valores são todos calculados com fórmulas e que não há células em branco. Ele não modifica a pasta de trabalho, portanto, se o usuário errar e selecionar a coluna errada, não haverá impacto em seus dados.

Option Explicit

Public Sub CopyPercentAsWholeNumber()

Dim Arr() As Variant
ReDim Arr(1 To Selection.SpecialCells(xlCellTypeFormulas).Count)

Dim i As Long
With Selection
    For i = 1 To UBound(Arr)
        Arr(i) = .Cells(i).Value * 100
    Next i
End With

Dim S As String
Dim objText As New MSForms.DataObject
S = Join(Arr, vbCrLf) & vbNewLine
objText.SetText S
objText.PutInClipboard

End Sub
    
por 07.12.2015 / 22:18
-2

Correção rápida

Destaque seus números. Vá em formatos personalizados digite 0.00, em seguida, ctrl + j no mesmo bit e digite sinal de porcentagem. Em seguida, vá em alinhamento e clique em quebra de texto. Clique ok

Isso oculta o sinal%, mas significa que você pode alterar o nome da coluna para as unidades que você está usando.

    
por 13.07.2016 / 11:23