Je suis nouveau pour faire des feuilles de calcul. J'en fais un pour un jeu auquel je joue. J'essaie d'utiliser un appel api pour renvoyer les données JSON du site Web Exchange des jeux, afin de mettre à jour les prix presque en temps réel. Cependant, je ne sais pas comment formater la valeur renvoyée pour ma fonction dans un int pour manipuler le nombre ultérieurement dans d'autres cellules.
EDIT Formule de cellule ci-dessous.
=Index(ImportHtml(CONCAT("http://services.runescape.com/m=itemdb_oldschool/results.ws?query=", encode(B8)), "table", 1),O9,3)*1
EDIT
Error Function MULTIPLY parameter 1 expects number values. But '37.8k' is a text and cannot be coerced to a number.
Comme vous pouvez le constater, je joue à Runescape. a des incréments non standard pour 10k 100k 1m 2b. Et je veux pouvoir en quelque sorte dépendre de ce qui m'est retourné (k, m, b) multiplier le nombre pour correspondre au prix. Je ne sais pas par où commencer à chercher des moyens de le faire?
=iferror(value(A1), if(right(A1)="k", left(A1, len(A1)-1)*1000, if(right(A1)="m", left(A1, len(A1)-1)*1000000, if(right(A1)="b", left(A1, len(A1)-1)*1000000000, "Unexpected Value"))))
Cela vérifiera le contenu de A1 et renverra la valeur numérique qui lui est associée.
D'abord, il vérifiera si essayer de convertir A1 en valeur numérique à l'aide de méthodes internes produira une erreur. Sinon, il retournera simplement ce résultat. Ceci gère tous les nombres inférieurs à 1000.
Ensuite, il vérifiera si le caractère le plus à droite est un k. Si c'est le cas, il supprimera ce caractère et multipliera la chaîne restante par 1000.
Si le personnage n'était pas un k, il vérifiera s'il s'agit d'un m. Si c'est le cas, il supprimera ce caractère et multipliera la chaîne restante par 1000000.
Si le personnage n'était pas un m, il vérifiera s'il s'agit d'un b, supprimant et multipliant de la même manière le nombre (cette fois-ci de 1000000000) si c'est le cas.
Enfin, si la valeur ne correspond pas déjà à un nombre et ne se termine pas par un k, m ou b, la chaîne "Valeur inattendue" s'affiche pour vous avertir du problème.