Compartilhar via


Como: Redimensionar controles dentro das células da planilha

Quando você redimensiona as colunas ou linhas em uma planilha, quaisquer controles de host contidos nas células automaticamente redimensionar para a altura ou largura da célula que foi redimensionada. Controles Windows Forms não redimensione automaticamente por padrão.

Aplicável a: As informações neste tópico se aplicam a projetos de nível de documento para Excel 2007 e Excel 2010. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.

Se você adicionar os controles em tempo de design, você deve definir opções de posicionamento para cada controle.

Se você adiciona um controle Windows Forms programaticamente e fornece um argumento de intervalo, o controle é redimensionado automaticamente quando uma célula dentro do intervalo é redimensionada. For more information, see Adicionar controles a documentos do Office em tempo de execução.

Redimensionar controles em tempo de Design

Para tornar os controles redimensionar com células em tempo de design

  1. Do caixa de ferramentas, arraste um controle Windows Forms para uma planilha.

  2. Clique com o botão direito no controle e clique em O controle de formato.

  3. No Controle de formato caixa de diálogo, clique no Propriedades guia.

  4. Em Posicionamento do objeto, selecione o Mover e dimensionar com células opção e, em seguida, clique em OK.

    Ao redimensionar a célula que contém o controle, o controle é redimensionado para caber na célula.

Redimensionar controles em tempo de execução

Se você adicionar um controle Windows Forms em tempo de execução e passar um Microsoft.Office.Interop.Excel.Range como o local para o controle, o controle será redimensionado automaticamente quando a célula da planilha que contém o intervalo é redimensionada.

Para tornar os controles redimensionar com células em tempo de execução

  • Adicione um controle para o intervalo A1.

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

    Ao redimensionar a célula que contém o controle, o controle é redimensionado para caber na célula.

Redefinindo a colocação de controle

Você pode redefinir o posicionamento e o redimensionamento do controle definindo a Placement propriedade para um dos seguintes XlPlacement valores:

Para alterar o comportamento de um controle, para que ele não redimensionar ou mover-se com a célula

  • Chame a propriedade de posicionamento do controle e defina o valor para xlFreeFloating.

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

Consulte também

Tarefas

Como: Adicionar controles do Windows Forms a documentos do Office

Como: Ocultar controles em planilhas, ao imprimir

Conceitos

Adicionar controles a documentos do Office em tempo de execução

Limitações dos controles do Windows Forms em documentos do Office

Outros recursos

Controles em documentos do Office