On peut vous aider ?

Cherchez des réponses ou parcourez les rubriques de notre documentation

Voir aussi:

< All Topics
Print

Moteur de calcul

Généralités

  • Un onglet est limité à 4095 colonnes et 1048575 lignes.
  • Les noms de fonctions et des booléens sont dans la locale de l’utilisateur. Les locales supportées sont :

Anglais, Danois, Néerlandais, Finnois, Français, Allemand, Italien, Norvégien, Portugais, Espagnol, Suédois Dans les autres cas, le moteurde calcul passe en Anglais.

  • Le moteur utilise la locale de l’utilisateur, y compris pour le séparateur d’argument.
  • Les références sont en A1, supporte les références relatives et absolues, de ligne ou de colonne, mais pas les référence 3D (par exemple =SOMME(Feuil1:Feuil3!A1)), qui seront avantageusement remplacées par un multi-onglets qui propose des fonctions de synthèse élaborées.

Erreurs

Les erreurs rapportées sont les suivantes :

Erreur Remarques Compatible Excel
#CIRCLE! La cellule fait partie d’un cycle
#DIV/0! OUI
#N/A OUI
#NAME? Fonction, nom inconnus OUI
#NUM! OUI
#PARAM! Mauvais nombre de paramètres lors de l’appel d’une fonction
#SYNTAX! La syntaxe de la formule n’est pas correcte pour le moteur Calame
#REF! Référence invalide OUI
#VALUE! OUI
#NOTSUPPORTED Fonction ou expression spécifique de formule non supportée dans GT
#UNKNOWN! Erreur inconnue, signale un bug dans le moteur

Gestion des dates

Le moteur de calcul ne supporte pas l’option Excel « Calendrier depuis 1904 »
Les dates strictement inférieures au 01/03/1900 ne correspondent pas avec Excel. En particulier les fonctions prenant une date en entrée (MOIS, JOUR,…) ne fonctionnent pas de la même manière qu’Excel avec les valeurs vide.
Ainsi, MOIS(Ø) = 12 dans GT et 1 dans Excel (car la date de numéro de série 0 vaut 12/12/1899 dans GT et 00/01/1900 dans Excel).

Fonctions

Généralités

  • Les fonctions volatiles sont recalculées comme dans Excel c’est à dire à chaque évaluation. Les fonctions volatiles sont :

ALEA, ALEA.ENTRE.BORNES, AUJOURDHUI, MAINTENANT, INDIRECT, DECALER

  • Les formules matricielles ne sont pas supportées
  • Le nom des fonctions n’est pas sensible à la casse.
  • Les fonctions renvoyant du texte n’ont pas de limite à 32767 caractères sauf REPT.
  • Certaines fonctions Excel fonctionnent différemment selon qu’un paramètre est une valeur ou une référence. Par exemple,

ET(VRAI ; « AAAAA ») renvoie #VALEUR ! tandis que ET(VRAI ;A1) avec A1= »AAAAA » renvoie VRAI. Le moteur de la grille ne différencie pas ces deux cas. Dans l’exemple ci-dessus, il renvoie toujours VRAI.

  • Les fonctions Excel qui traitent des nombres entiers renvoient un résultat incohérent si l’entier dépasse 2^53 (précision du type double). Par exemple pour GCD(2^60 ;2^60-1) = GCD(1152921504606846976, 1152921504606846975) Excel renvoie 1,..E18 alors que le résultat est 1. Certaines fonctions GT vont vérifier que les opérandes ne dépassent pas la limite et renvoient #NUM ! dans le cas contraire (exp. GCD et LCM). Ces cas sont signalés dans la liste des fonctions.

Fonctions avec critère chaîne (pour NB.SI, SOMME.SI, SOMME.SI.ENS…)

Si le critère contient ‘*’, ‘?’, le caractère sera interprété comme un joker (de la même manière qu’Excel).

Le caractère de protection de ces jokers est le ~

De plus, les critères de type chaîne sont limités à 255 caractères dans Excel. Le moteur GT n’a pas cette limitation.

Liste des fonctions du moteur

Fonctions spécifiques GT

Nom SyntaxeRemarques
GTDISPLAYTEXTGTDISPLAYTEXT(cell)Renvoie le texte affiché par la cellule (tient compte du format numérique)
GTHASH (dépréciée à partir de la version 2019)GTHASH(range, [algo, DoPj, SkipEmpty])Algo = CRC32 ou MD5 (défaut)
DoPj : booléen
SkipEmpty : booléen
GTMOAXISGTMOAXIS([offset])Renvoie le nom de l'axe de groupe de multi-onglet dans un groupe de multi-onglet
GTMOAXISVALGTMOAXISVAL([offset])Renvoie l'item courant (ou les précédents/suivants) dans un multi-onglet
GTMOGETSHEETNAMEGTMOGETSHEETNAME(item [, Axis, tab_index] ) renvoie le nom de la grille/feuille pour l'item "item" dans un multi-onglet, Axis et tab_index permettent de spécifier le groupe de multi-onglet et/ou le numéro d'onglet dans un groupe de multi-onglet comprenant plusieurs onglets à démultiplier
GTMSGTMS.Fonction_GTMS(argument)Permet d'agréger les données d'un multi-onglet. Voir l'article détaillé Synthèse de données d'un multi-onglet
GTPATNUMGTPATNUM([reference])Renvoie le numéro de "ligne" dans un motif. Voir l'article détaillé GTPATNUM
GTSGMOGTSGMO(‘Grille’!ref)Réalise la somme des valeurs d'une cellule s
ur les onglets d'un groupe de multi-onglets. Le nom de la grille est obligatoire.
GTVALIDMAILADDRESS GTVALIDMAILADDRESS()Renvoie l'adresse mail, si validée, dans Answer (processus de validation via pièce jointe .checkmail)
GTISUSERCONNECTEDGTISUSERCONNECTED()Renvoie Vrai si l'utilisateur est connecté actuellement à l'instance, ou ou Faux sinon.
GTADMAILADDRESSGTADMAILADDRESS()Renvoie l'adresse mail du compte AD ayant servi à l'authentification dans Answer (l'authentification est activée via l'action de lancement de campagne)
GTPJSIZEGTPJSIZE(ref_cellule)Renvoie la taille du fichier enregistré dans le composant de pièce jointe situé en "ref_cellule"

Date & Heure

Nom (EN)Nom (FR)SyntaxeRemarques
DATE DATEDATE(year, month, day)
DATEVALUEDATEVALDATEVALUE(date_text)Ne supporte
que date_text
aux formats dd/mm/yy[yy] (local)
DAYJOURDAY(serial_number)
DAY360JOUR360
EDATEMOIS.DECALEREDATE(start_date,months)Range => #VALUE!
EOMONTHFIN.MOISEOMONTH(date, month)
HOURHEUREHOUR(serial_number)
ISOWEEKNUMHEURE.ISOISOWEEKNUM(date)Excel >= 2013, GT >= 3.9
MONTHMOISMONTH(serial_number)
NETWORKDAYSNB.JOURS.OUVRESNETWORKDAYS
(start_date, end_date, [holidays])
NETWORKDAYS.INTLNB.JOURS.OUVRES.INTLNETWORKDAYS.INTL
(start_date, end_date,
[weekend], [holidays])
NOW MAINTENANTNOW( )
SECONDSECONDESECOND(serial_number)
TIMETEMPSTIME(hour, minute, second)
TIMEVALUETEMPSVALTIMEVALUE(time_text)
TODAYAUJOURDHUITODAY()
WEEKDAYJOURSEMWEEKDAY
(serial_number,return_type)
WEEKNUMNO.SEMAINEWEEKNUM
(serial_num,return_type))
Range => #VALUE!
return_type >= 21 à partir de GTv3.9
ISOWEEKNUMNO.SEMAINE.ISOISOWEEKNUM(serial_num)à partir de GTv3.9
équivalent
à WEEKNUM avec
return_type
à 21
YEARANNEEYEAR(serial_number)

Information

Nom (EN)Nom (FR)SyntaxeRemarques
ERROR.TYPETYPE.ERREURERROR.TYPE(val_error)Pour les erreurs GT les valeurs sont  >= 100:
#SYNTAX ! : 100
#CIRCLE! : 101
#PARAM! : 102
#UNKNOWN! : 103
ISBLANKESTVIDEISBLANK(value)
ISERRESTERRISERR(value)
ISERRORESTERREURISERROR(value)
ISEVENEST.PAIRISEVEN(number)Range => #VALUE!
ISLOGICALESTLOGIQUEISLOGICAL(value)
ISNAESTNAISNA(value)
ISNONTEXTESTNONTEXTEISNONTEXT(value)
ISNUMBERESTNUMISNUMBER(value)
ISODDEST.IMPAIRISODD(number)Range => #VALUE!
ISTEXTESTTEXTEISTEXT(value)
N NN(value)Range => TopLeft
NANANA()
TYPETYPETYPE(value)

Logique

Nom (EN)Nom (FR)SyntaxeRemarques
ANDETAND(logical1, [logical2], ...)
FALSEFAUXFALSE()
IFSIIF(logical_test, [value_if_true], [value_if_false])
IFERRORSIERREURIFERROR(value,value_if_error)Fonction d’Excel 2007 et >
NOTNONNOT(logical)
OROUOR(logical1,logical2,...)
TRUEVraiTRUE()

Recherche & Référence

Nom (EN)Nom (FR)SyntaxeRemarques
ADDRESSADRESSEADRESSE(row,column,[abs_num],[a1],[sheet_name_txt])Le paramètre A1 est ignoré, le résultat est toujours produit dans le style A1
CHOOSECHOISIRCHOOSE(index_num,value1,value2,...)
COLUMNCOLONNECOLUMN(reference)
COLUMNSCOLONNESCOLUMNS(range)
HLOOKUPRECHERCHEHHLOOKUP(lookup_value,table_array, row_index_num,[range_lookup])
INDEXINDEXINDEX(array,row_num[,column_num])Compatibilité Excel
* pas de gestion de la syntaxe avec les numéros de zone
* Par défaut, column_num vaut 1 comme dans Excel
* Renvoie #VALUE! si column_num = 0
INDIRECTINDIRECTINDIRECT(range_or_text[,a1])Toujours en A1, le deuxième paramètre est ignoré
ISREFESTREFESTREF(value)
LOOKUPRECHERCHELOOKUP(lookup_value,lookup_vector,result_vector)
ou
LOOKUP(lookup_value,array)
Compatibilité Excel:
* GT renvoie #N/A si lookup_vector ou result_vector n'est pas un vecteur (Excel seulement pour result_vector)
* GT renvoie #N/A si lookup_vector et result_vector n'ont pas la même taille
MATCHEQUIVMATCH(lookup_value,lookup_array,[match_type])
OFFSETDECALEROFFSET(range,rows,columns,[width_rows,[height_columns]])Renvoie #VALUE! quand le premier paramètre n'est pas une référence (Excel interdit la saisie d'une telle formule)
ROWLIGNEROW(reference)
ROWSLIGNESROWS(range)
VLOOKUPRECHERCHEVVLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])

Maths

Nom (EN)Nom (FR)SyntaxeRemarques
ABSABSABS(number)
ACOSACOSACOS(number)
ACOSHACOSHACOSH(number)
ASINHASINHASINH(number)
ATANATANATAN(number)
ATAN2ATAN2ATAN2(x_num,y_num)
ATANHATANHATANH(number)
CEILINGPLAFONDCEILING
(number,significance)
COMBINCOMBINCOMBIN
(number,number_chosen)
COSCOSCOS(number)
COSHCOSHCOSH(number)
DEGREESDEGRESDEGREES(angle)
EVENPAIREVEN(number)
EXPEXPEXP(number)
FACTFACTFACT(number)
FACTDOUBLEFACTDOUBLEFACTDOUBLE(number)
FLOORPLANCHERFLOOR
(number,significance)
GCDPGCDGCD
(number1,number2, ...)
Renvoie #NUM!

si un des paramètres

dépasse 2^53
INTENTINT(number)
LNLNLN(number)
LCMPPCMLCM
(number1,number2, ...)
Renvoie #NUM! si un
des paramètres ou le
résultat dépasse 2^53
LOGLOGLOG(number,base)
LOG10LOG10LOG10(number)
MODMODMOD(number,divisor)
MROUNDARRONDI.AU.MULTIPLEMROUND
(number, multiple)
MULTINOMIALMULTINOMIALEMULTINOMIAL
(number1,number2, ...)
Renvoie #VALUE! si un argument est de type chaîne
(même si la chaîne contient un nombre.
Dans ce cas, Excel renvoie une mauvaise valeur car il utilise en interne la fonction SOMME qui ne fait pas cette conversion).
ODDIMPAIRODD(number)
PIPIPI()
POWERPUISSANCEPOWER(number,power)
PRODUCTPRODUITPRODUCT
(number1, [number2], ...)
QUOTIENTQUOTIENTQUOTIENT
(numerator,denominator)
dans Excel <= 2003,
peut renvoyer -0 (par
exemple : QUOTIENT(-1,4))
RANDALEARAND()
RANDBETWEENALEA.ENTRE.BORNESRANDBETWEEN
(min, max)
RANKRANGRANG
(number,ref,order)
ROUNDARRONDIROUND
(number, num_digits)
ROUNDDOWNARRONDI.INFROUNDDOWN
(number, num_digits)
ROUNDUPARRONDI.SUPROUNDUP
(number, num_digits)
SIGNSIGNESIGN(number)
SINSINSIN(number)
SINHSINHSINH(number)
SQRTRACINESQRT(number)
SQRTPIRACINE.PISQRTPI(number)
SUBTOTALSOUS.TOTALSUBTOTAL
(function_num, ref1, ref2, ...)
si function_num est ³
101 et £ 111 alors
génère une erreur de paramètre
SUMSOMMESUM(number1, [number2], [number3], [number4], ...)
SUMIFSOMME.SISUMIF(range, criteria, [sum_range])range doit avoir un
nombre d'élément
<= à sum_range sinon
=> #N/A! (dans le cas contraire, Excel complète range)
SUMIFSSOMME.SI.ENSSUMIFS
(sum_range,[range1, criteria1], [range2, criteria2],...)
SUMPRODUCTSOMMEPRODSUMPRODUCT
(array1,array2,array3, ...)
Contrairement à SUM,
ne tient pas compte
des chaînes.
Les calculs du type SOMMEPROD(Plage1 opérateur Plage2) ne
sont pas autorisés (exemple SOMMEPROD
(D1:D2+E1:E2/2)
SUMSQSOMME.CARRESSUMSQ
(number1,number2,...)
Excel compte aussi les
booléens ou texte
rentrés directement comme argument
SUMX2MY2SOMME.X2MY2SUMX2MY2
(array_x,array_y)
= somme (x^2 - y^2)
SUMX2PY2SOMME.X2PY2SUMX2PY2
(array_x,array_y)
= somme (x^2 + y^2)
SUMXMY2SOMME.XMY2SUMXMY2
(array_x,array_y)
= somme (x - y)^2
TANTANTAN(number)
TANHTANHTANH(number)
TRUNCTRONQUETRUNC
(number, num_digits)

Statistiques

Nom (EN)Nom (FR)SyntaxeRemarques
AVEDEVECART.MOYENAVEDEV
(number1,number2,...)
AVERAGEMOYENNEAVERAGE
(number1,number2,...)
Excel compte aussi les booléens ou texte rentrés directement comme argument
AVERAGEIFMOYENNE.SIAVERAGEIF
(range,criteria,[av_range])
A partir de la version 3.9range doit avoir un nombre d'élément <= à av_range sinon => #N/A! (dans le cas contraire, Excel complète range)
AVERAGEIFSMOYENNE.SI.ENSAVERAGEIFS
(av_range,rng1,crit1,
rng2,crit2)
A partir de la version 3.9
COUNTNBCOUNT
(value1,value2,...)
COUNTANBVALCOUNTA
(value1,value2,...)
COUNTBLANKNB.VIDECOUNTBLANK(range)
COUNTIFNB.SICOUNTIF
(range,criteria)
COUNTIFSNB.SI.ENSCOUNTIFS
(range1,criteria1,
range2, criteria2…)
Fonction d’Excel 2007 et >
COVARCOVARIANCECOVAR
(array1,array2)
DEVSQSOMME.CARRES.
ECARTS
DEVSQ
(number1,number2,...)
MAXMAXMAX
(number1,number2,...)
MAXAMAXAMAXA
(number1,number2,...)
MEDIANMEDIANEMEDIAN
(number1,number2,...)
MINMINMIN
(number1,number2,...)
MINAMINAMINA
(number1,number2,...)
STDEVECARTYPESTDEV
(number1,number2,...)
STDEVPECARTYPEPSTDEVP
(number1,number2,...)
VARVARVAR
(number1,number2,...)
VARPVARPVARP
(number1,number2,...)

Texte

Nom (EN)Nom (FR)Syntaxe
CHARCARCHAR(number)
CLEANEPURAGECLEAN(text)
CODECODECODE(text)
CONCATENATECONCATENERCONCATENATE (text1,text2,...)
EXACTEXACTEXACT(text1,text2)
FINDTROUVEFIND(find_text,within_text,start_num)
FIXEDCTXTFIXED(number[,decimals,no_commas])
LEFTGAUCHELEFT(text,num_chars)
LENNBCARLEN(text)
LOWERMINUSCULELOWER(text)
MIDSTXTMID(text,start_num,num_chars)
PROPERNOMPROPREPROPER(text)
REPLACEREMPLACERREPLACE(old_text,start_num,num_chars,new_text)
REPTREPTREPT(text,number_times)
RIGHTDROITERIGHT(text,num_chars)
SEARCHCHERCHESEARCH(find_text,within_text,start_num)
SUBSTITUTESUBSTITUTESUBSTITUTE(text,old_text,new_text,instance_num)
TTT(value)
TEXTTEXTETEXT(value, format_text)
TRIMSUPPRESPACETRIM(text)
UPPERMAJUSCULEUPPER(text)
VALUECNUMVALUE(text)

Finance

Nom (EN)Nom (FR)Syntaxe
NPVVANNPV(rate, value1, value2,...)
XNPVVAN.PAIEMENTSXNPV(rate, values, date)

Zones nommées

Lors de l’import d’un fichier Excel dans Design, les zones nommées sont importées.

Les zones nommées suivantes sont gérées (locales ou globales)

  • référence (absolue)
  • valeur
  • formule sans référence relative (sauf formules matricielles).

On peut utiliser une zone de nom dans les graphes. Le moteur gère correctement l’opérateur de référence sur les zones. Dans le tableau ci-dessous, la zone nommée « Quantité » est la plage de données C6:C8, la zone nommée « CA » = D6:D8. En E6, la formule est « Quantité*CA », soit, dans ce cas, C6*D6.

Les zones suivantes ne sont pas importées :

  • zone cachée
  • #REF !
  • formule invalide (pour GT)

Toutes les zones nommées globales sont réimportés à chaque import Excel, même celles qui ne sont pas dans la zone d’import. On peut consulter (mais pas modifier) la liste des zone nommées via « Outils » –> « Voir les noms ». Les doublons avec les noms générés à l’export Excel sont vérifiés à la sauvegarde dans Design (seulement un warning). On autorise toutefois une collision si la zone de noms et le composant coïncide.

Fonction Tableau Excel 2007 (et supérieure)

La fonction Tableau d’Excel n’est pas supportée.

Was this article helpful?
0 out Of 5 Stars
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
5
How can we improve this article?
How Can We Improve This Article?
Table of Contents