none
VB Manipulation sur l'affichage d'un objet OLE Excel RRS feed

  • Question

  • Bonjour à tous,

    Tout d'abord merci aux personnes qui prendront en considération mon problème.
    Avant de l'exposer, voici quelques informations générales :
    • Je développe une application sous Access 2010-VB et Win XP
    • L'application a pour but de calculer des prévisions de stock
    • L'application est pour du multi-utilisateur ayant différents types d'affichage
    • Afin de rendre l'application plus vivant et intéractive, je veux pouvoir incorporer des graphiques d'analyse "assez" complexe : différents type de graphiques, calculs automatiques, mises à jour régulières...
    • Ce qui fait que je ne peux pas utiliser les graphiques innés d'Access

    Par conséquent, mon idée est d'incorporer un object OLE indépendant qui est un Excel dans lequel la mise à jour est fait par les cellules d'une feuille, et le graphique est alors basic à construire.

    Mon problème est le suivant : lors de la procédure VB de redimensionnement d'un formulaire, l'objet OLE suit les instructions de redimensionnement afin de coller à la taille de la fenêtre, mais je ne sais pas comment redimensionner le contenu qui est à l'intérieur... J'ai cherché mais rien ne semble fonctionner..

    Sur la capture en PJ, l'objet est bien redimensionné pour être seulement sur la partie visible (encadré 3D sur l'onglet), mais le graphique devrait se réduire en hauteur.
    En remarque, j'ai essayé de modifier par VB les colonnes qui sont affichées lorsque l'objet est une feuille de calcul mais sans succès également.

    Merci encore.

    Pabisiak martin

    lundi 8 octobre 2012 07:00

Réponses

  • Bonjour,

    Les propriétés InsideWitdh et InsideHeight du formulaire peuvent vous permettre de redimentionner un objet en conséquence de ces valeur.

    Sinon, si c'est un graphique Excel, la propriété PlotArea qui représente la zone de traçage d'un graphique possède une propriété Width que vous pouvez ajuster.

    Petit plus : dans votre redimension, je pense que vous omettez de considérer la hauteur de la zone "onglet Détail par composant" du formulaire.


    Argy

    • Marqué comme réponse Martin Pab mercredi 10 octobre 2012 12:22
    mercredi 10 octobre 2012 08:29
    Modérateur

Toutes les réponses

  • Bonjour,

    Les propriétés InsideWitdh et InsideHeight du formulaire peuvent vous permettre de redimentionner un objet en conséquence de ces valeur.

    Sinon, si c'est un graphique Excel, la propriété PlotArea qui représente la zone de traçage d'un graphique possède une propriété Width que vous pouvez ajuster.

    Petit plus : dans votre redimension, je pense que vous omettez de considérer la hauteur de la zone "onglet Détail par composant" du formulaire.


    Argy

    • Marqué comme réponse Martin Pab mercredi 10 octobre 2012 12:22
    mercredi 10 octobre 2012 08:29
    Modérateur
  • Bonjour,

    Merci beaucoup pour l'aide j'y suis arrivé. Notamment pour les propriétés InsideWitdh et InsideHeight qui sont très utiles!

    Cependant, je ne comprends pas le conseil du "petit plus", que voulez-vous dire? Ou plutôt comment constatez vous cela? Est-ce parce que l'on ne visualise pas la totalité du graphique?

    D'avance, merci encore!


    Pabisiak martin

    mercredi 10 octobre 2012 12:21
  • Le mode d'affichage que vous avez choisi prend plus de place en hauteur à cause de la hauteur de l'onglet.

    Donc à la propriété InsideHeight, vous devez ajouter la hauteur de ce dernier pour prendre en considération la hauteur totale du formulaire ; en effet, s'il manque quelques pixels, cela peut sans doute se résorber en recalculant la hauteur. Grossièrement, vous pouvez ajouter la valeur de 350.

    Cette valeur est exprimée en twips  
    1 twips = 1/20e de point =1/1 440e de pouce et 1cm contient 567 twips


    Argy

    jeudi 11 octobre 2012 08:40
    Modérateur