calc macro : propriété formulalocal

Bonjour,

Je reviens avec ma problématique. Tout fonctionne très bien mais je vais utiliser cette macro régulièrement et déjà pendant les tests, après avoir vérifié en affichage "L1c1" j'oublie de repasser en affichage "calcA1" et mes macros plantent. J'aimerais vérifier avec la macro l'affichage des formule et même mieux le forcer.

En fouillant dans l'API, j'ai trouvé la "propriété" qui contient l'affichage /"com::sun::star::sheet::AddressConvention/" mais je ne sais pas l'utiliser/./ Je suppose que c'est une propriété de libre-office/.

/Si une bonne âme (!!) pouvait m'aider ?/

/Merci
Claude/
/

Bonjour

claude-2 wrote

J'aimerais vérifier avec la macro l'affichage des formule et même mieux le
forcer.

Ci-dessous un exemple qui commence par tester et afficher la valeur
courante de l'option puis qui force en affichage Excel L1C1.

Nota : l'interface ne propose pas toutes les valeurs listées sur la doc
IDL...

Cordialement
Pierre-Yves

option explicit

sub TesterConf

dim oFormulaSyntax as object

globalScope.basicLibraries.loadLibrary("Tools")

oFormulaSyntax =
getRegistryKeyContent("org.openoffice.Office.Calc/Formula/Syntax", true)

if oFormulaSyntax.hasByName("Grammar") then
  select case oFormulaSyntax.grammar
    case com.sun.star.sheet.AddressConvention.UNSPECIFIED
      msgbox "Non spécifié...", 64, "Syntaxe des formules"
    case com.sun.star.sheet.AddressConvention.OOO
      msgbox "Calc A1", 64, "Syntaxe des formules"
    case com.sun.star.sheet.AddressConvention.XL_A1
      msgbox "Excel A1", 64, "Syntaxe des formules"
    case com.sun.star.sheet.AddressConvention.XL_R1C1
      msgbox "Excel L1C1", 64, "Syntaxe des formules"
    case com.sun.star.sheet.AddressConvention.XL_OOX
      msgbox "Excel OOX", 64, "Syntaxe des formules"
    case com.sun.star.sheet.AddressConvention.LOTUS_A1
      msgbox "LOTUS_A1", 64, "Syntaxe des formules"
    case else
      msgbox "Configuration non prévue...", 16, "Syntaxe des formules"
  end select
else
  msgbox "Configuration non prévue...", 16, "Syntaxe des formules"
end if

oFormulaSyntax.setPropertyValue("Grammar",
com.sun.star.sheet.AddressConvention.XL_R1C1)
oFormulaSyntax.commitChanges

end sub

Merci je vais tester çà

Claude

Bonsoir,

Après plusieurs tests en version 3.5 mimo et en 4.1.6.2, il semblerait que la macro modifie le paramètre car si on la lance deux fois de suite, la seconde fois elle affiche bien la syntaxe choisie dans la macro mais en réalité au niveau de l'interface rien n'est modifié si on ne ferme pas libre-office.

Si on ferme, à la ré-ouverture la modification est prise en compte.

Dans mon cas, il me suffit de savoir quel est l'affichage des formules.

Donc merci infiniment.

Claude

Bonjour

claude-2 wrote

Après plusieurs tests en version 3.5 mimo et en 4.1.6.2, il semblerait
que la macro modifie le paramètre car si on la lance deux fois de suite,
la seconde fois elle affiche bien la syntaxe choisie dans la macro mais
en réalité au niveau de l'interface rien n'est modifié si on ne ferme
pas libre-office.

Si on ferme, à la ré-ouverture la modification est prise en compte.

Je reproduis en effet avec ces versions. J'avais développé avec une
4.3 qui permet la prise en compte immédiate.

Merci pour le "retour"...

Cordialement
Pierre-Yves