Inserindo valor na célula do Excel em vez de fórmula
-
18-09-2019 - |
Pergunta
Eu tenho um script VBA que insere cordas longas nas células do Excel. Em alguns casos, a corda começa com um =
. Parece que o Excel interpreta isso como uma fórmula e eu recebo um Out of Memory
erro devido às limitações de memória das fórmulas.
Como digo ao Excel que estou escrevendo um valor, não uma fórmula? Atualmente, estou fazendo isso:
ws.Range("A" & row) = Mid(xml, first, CHUNK_SIZE)
Eu tentei o seguinte código, mas não funciona ...
ws.Range(...).Value = ....
Solução
Anexar a '
antes de o =
sinal:
Sub Test()
'This returns 30 in cell Al
Range("A1").Value = "=SUM(10,10,10)"
'This shows formula as text in cell A2
Range("A2").Value = "'" & "=SUM(10,10,10)"
End Sub
Outras dicas
Adicione um apóstrofo '
Para o início da string (que o Excel pensa ser uma fórmula) e o Excel deve interpretá -la como uma string em vez de uma fórmula.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow