Como converter o valor "45" para o valor "45" em Excel VBA?
Na maioria das vezes, você ganhou'não precisa "converter"; VBA fará uma conversão de tipo implícita segura para você, sem o uso de conversores como CStr
.
O código abaixo funciona sem problemas, porque a variável é do tipo String, e ** a conversão do tipo implícita é feita automaticamente para você!
Dim myVal As String
Dim myNum As Integer
myVal = "My number is: "
myVal = myVal & myNum
Resultado:
"O meu número é: 0"
Você não'nem precisa ter essa fantasia, isso também funciona:
Dim myString as String
myString = 77
" "77"
O único tempo que você precisará converter é quando a variável Tipo for ambígua (por exemplo, Tipo Variante, ou uma Cell's Value
(que é Variante)).
Mesmo assim, você ganhou'não precisa utilizar a função CStr
se você're-compondo com outra variável String ou constante. Assim:
Sheet1.Range("A1").Value = "My favorite number is " & 7
" O meu número favorito é 7"
Então, na verdade, o único caso rare é quando você realmente quer armazenar um valor inteiro, em uma variante ou valor de célula, quando não também se compõe com outra string (que é um caso lateral bastante raro, eu poderia acrescentar):
Dim i as Integer
i = 7
Sheet1.Range("A1").Value = i
7
Dim i as Integer
i = 7
Sheet1.Range("A1").Value = CStr(i)
" "7"