Insertion de valeur dans la cellule Excel à la place de formule
-
18-09-2019 - |
Question
J'ai un script VBA qui insère des chaînes longues dans les cellules Excel. Dans certains cas, la chaîne commence par un =
. Il semble que Excel interprète cela comme une formule et je reçois une erreur de Out of Memory
en raison des limitations de mémoire de formules.
Comment puis-je dire Excel que je suis en train d'écrire une valeur, pas une formule? À l'heure actuelle, je fais ceci:
ws.Range("A" & row) = Mid(xml, first, CHUNK_SIZE)
J'ai essayé le code suivant, mais il ne fonctionne pas ...
ws.Range(...).Value = ....
La solution
Append un '
avant le signe =
:
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
Autres conseils
Ajoutez un '
de début apostrophe de la chaîne (qu'Excel pense est une formule) et Excel doit l'interpréter comme une chaîne au lieu d'une formule.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow