Use INT () para obter apenas o número sem as casas decimais:
=GetFirstLetters(A1)&INT(A2)
Onde A1 tem o nome e A2 o total.
Estou trabalhando em uma pasta de trabalho "Site de emprego" para minha empresa. Ele acabará cuidando de toda a papelada que será entregue no final de um trabalho. A fatura antiga que recebemos simplesmente usou o total da fatura como "Número do ticket", mas há casos em que isso resulta em um número de ticket duplicado.
Então, o que fiz foi usar o VBA para extrair a primeira letra de cada palavra em nome de um cliente usando este código:
Function GetFirstLetters(rng As Range) As String
Dim arr
Dim I As Long
arr = VBA.Split(rng, " ")
If IsArray(arr) Then
For I = LBound(arr) To UBound(arr)
GetFirstLetters = GetFirstLetters & Left(arr(I), 1)
Next I
Else
GetFirstLetters = Left(arr, 1)
End If
End Function
E aposta isso no início do total da fatura. O resultado, no entanto, me deixa com um decimal e a mudança restante, que eu gostaria de omitir.
Não encontrei uma maneira de remover as casas decimais, e nem tenho certeza se é possível agora que a célula contenha uma combinação de palavra e valor, mas imaginei que esse seria o lugar para perguntar.
Qualquer ajuda seria muito apreciada
Use INT () para obter apenas o número sem as casas decimais:
=GetFirstLetters(A1)&INT(A2)
Onde A1 tem o nome e A2 o total.
Você pode usar a FLOOR.MATH função , por exemplo, com a função
=A1 & FLOOR.MATH(B1)
na célula C1, você poderia ter
Tags microsoft-excel-2016 vba