PatCatNat’s
Faire de son négatif un positif !

Site personnel de Patrice MOREL.

Multiplier des artichauts !
Article mis en ligne le 8 février 2008
dernière modification le 9 février 2008

par Patrice MOREL

Pour multiplier une cellule Texte par une cellule Nombre, et obtenir une cellule Texte... Sont-ce des artichauts ou des artifroits ?

Par exemple vous voulez que le résultat s’affiche comme çà :

Désignation Quantité Résultat
5 bananes 2 10 bananes
3 cm2 6 18 cm2
2 tonnes 80 160 tonnes
3 cocos 15000 45000 cocos

Il faut créer une fonction dans un module :

Dans la barre des menus : Outils/Macro/Visual Basic Editor
_et l’application Visual Basic s’ouvre.

Dans Visual :
Dans la barre des menus : Insertion/Module

Copier et Coller :

Vous pouvez fermer Visual Basic.

Et dans la cellule C1 par exemple : =TelQue(A1;B1)

Si A1 est "2 tonnes"
Si B1 est "3"
C1 sera "6 tonnes"

Ensuite vous pouvez incrémenter les autres cellules dessous !

__2__

Une autre solution "plus barbare" et donc plus lourde en poids de fichier et calcul consiste à mettre des fonctions existantes (ici en C1) :
(à saisir sans les { } et valider par Ctrl+Shift+Entrée)

__2__

Dans le même style, il s’agit de multiplier des unités par un prix unitaire pour obtenir le résultat en euros (ou autre monnaie !).

Si A6 contient les unités (par exemple 542 cm3) et B6 les euros (4) mettre la fonction en C6 :
(Les Unités doivent toujours avoir au moins 1 espace entre le chiffre et l’unité elle-même)

Le résultat en C6 sera 1084 euros

Explication de texte :
=TROUVE(" " ;A6) => TROUVE la position de l’espace dans la chaîne de caractères 542 cm3
=GAUCHE(A6 ;TROUVE(" " ;A6)) => conserve les 4 premiers caractères en partant de la GAUCHE
=CNUM(GAUCHE(A6 ;TROUVE(" " ;A6))) => converti le Texte en Nombre (fonction CNUM)
=CNUM(GAUCHE(A6 ;TROUVE(" " ;A6)))*B6 => multipli par la cellule du Multiplicateur
=CONCATENER(CNUM(GAUCHE(A6 ;TROUVE(" " ;A6)))*B7 ;" euros") => à CONCATENER le résultat et le mot euros (précédé d’un espace)