Se connecter avec
S'enregistrer | Connectez-vous

[Excel 2007] Twips problème équivalence

Dernière réponse : dans Programmation

Bonjour,

Dans l'aide vba je lis ceci :
Citation :
Unité de mesure de l'écran égale à 1/20 point. Un twip est une unité indépendante de l'écran, utilisée pour que l'emplacement et la proportion des éléments d'écran de votre application soient les mêmes, quel que soit le système d'affichage. On compte environ 1 440 twips dans un pouce logique et 567 twips dans un centimètre logique (la longueur d'un élément d'écran étant égale à un pouce ou à un centimètre lorsqu'il est imprimé).
Pourtant lorsque je crée un graphique avec des dimensions en twips, je n'ai pas du tout cet équivalent. Exemple :
  1. Set GrosGraph = ActiveSheet.ChartObjects.Add(100, 100, 400, 200)
Avec cette ligne de code je me retrouve avec un cadre de 14,11 cm de long sur 7,06 cm de large.
Est-ce que l'équivalence donnée est fausse ou est-ce que j'ai mal compris quelque chose ?

Merci pour vos infos.
Lassé par la pub ? Créez un compte

Meilleure solution

Salut à vous deux.

Beru, ta formule est bonne, mais cela voudrait dire que 567 twips font 20 cm et non pas 1 cm, donc que l'aide VBA serait fausse.

En fait j'ai compris ce qu'il se passe.

Dans mon exemple, la méthode Add de la collection ChartObjects a des arguments exprimées en points, pas en twips.
Car si j'ai pu lire quelque part que les valeurs étaient en twips, c'était sans doute pour la méthode Add d'une autre collection.
Or il ne faut pas confondre twips et points (au début je croyais même que twips était la traduction en anglais de points).

Conclusion :

Il n'y a pas d'erreur dans l'aide VBA :
- Un point vaut bien 1/72 pouce.
- Un twip vaut bien 1/20 point.

Les arguments Top, Left, Width et Height ne sont pas toujours exprimés dans la même unité, donc à vérifier pour chaque méthode !
Lassé par la pub ? Créez un compte