Redimensionner des contrôles dans les cellules de feuille de calcul

Lorsque vous redimensionnez des colonnes ou des lignes dans une feuille de calcul, tous les contrôles hôtes dans les cellules sont automatiquement redimensionnés à la hauteur ou à la largeur de la cellule qui a été redimensionnée. Les contrôles Windows Forms ne sont pas redimensionnés automatiquement par défaut.

S’applique à : les informations contenues dans cette rubrique s’appliquent aux projets au niveau du document pour Excel. Pour plus d’informations, consultez Fonctionnalités disponibles par application Office lication et le type de projet.

Si vous ajoutez les contrôles au moment du design, vous devez définir des options de positionnement pour chaque contrôle.

Si vous ajoutez un contrôle Windows Forms par programmation et fournissez un argument de plage, le contrôle se redimensionne automatiquement lorsqu’une cellule de la plage est redimensionnée. Pour plus d’informations, consultez Ajouter des contrôles à Bureau documents au moment de l’exécution.

Redimensionner les contrôles au moment du design

Pour redimensionner les contrôles avec des cellules au moment du design

  1. À partir de la boîte à outils, faites glisser un contrôle Windows Forms vers une feuille de calcul.

  2. Cliquez avec le bouton droit sur le contrôle, puis cliquez sur Formater le contrôle.

  3. Dans la boîte de dialogue Mettre en forme le contrôle , cliquez sur l’onglet Propriétés .

  4. Sous Positionnement de l’objet, sélectionnez l’option Déplacer et dimensionner avec les cellules , puis cliquez sur OK.

    Lorsque vous redimensionnez la cellule qui contient le contrôle, le contrôle est redimensionné pour s’adapter à la cellule.

Redimensionner les contrôles au moment de l’exécution

Si vous ajoutez un contrôle Windows Forms au moment de l’exécution et que vous passez un Range emplacement pour le contrôle, le contrôle est automatiquement redimensionné lorsque la cellule de feuille de calcul qui contient la plage est redimensionnée.

Pour rendre les contrôles redimensionnés avec des cellules au moment de l’exécution

  1. Ajoutez un contrôle à la plage A1.

    Microsoft.Office.Tools.Excel.Controls.Button control1 =
        this.Controls.AddButton(this.Range["A1"], "control1");
    

    Lorsque vous redimensionnez la cellule qui contient le contrôle, le contrôle est redimensionné pour s’adapter à la cellule.

Réinitialiser l’emplacement du contrôle

Vous pouvez réinitialiser le placement et le redimensionnement du contrôle en définissant la Placement propriété sur l’une des valeurs suivantes XlPlacement :

Pour modifier le comportement d’un contrôle afin qu’il ne soit pas redimensionné ou déplacé avec la cellule

  1. Appelez la propriété de placement du contrôle et définissez la valeur sur xlFreeFloating.

    control1.Placement = Microsoft.Office.Interop.Excel.XlPlacement.xlFreeFloating;