Comment : déplacer des feuilles de calcul dans les classeurs par programmationHow to: Programmatically Move Worksheets Within Workbooks

Vous pouvez modifier par programmation la position des feuilles de calcul les unes par rapport aux autres dans un classeur.You can programmatically change the position of worksheets relative to other worksheets in a workbook. Si vous ne spécifiez pas d’emplacement pour la feuille déplacée, Excel crée un classeur pour le contenir.If you do not specify a location for the moved sheet, Excel creates a new workbook to contain it.

S’applique à : Les informations contenues dans cette rubrique s’appliquent aux projets de niveau document et aux projets de compléments VSTO pour Excel.Applies to: The information in this topic applies to document-level projects and VSTO add-in projects for Excel. Pour plus d’informations, consultez Fonctionnalités disponibles par type d’application et de projet Office.For more information, see Features Available by Office Application and Project Type.

Pour déplacer une feuille de calcul dans une personnalisation au niveau du documentTo move a worksheet in a document-level customization

  1. Affectez le nombre total de feuilles dans le classeur à une variable, puis déplacez la première feuille de calcul pour qu’elle devienne la dernière.Assign the total number of sheets in the workbook to a variable and then move the first worksheet so that it becomes the last one.

    int totalSheets = this.Application.ActiveWorkbook.Sheets.Count;
    Globals.Sheet1.Move(Globals.ThisWorkbook.Sheets[totalSheets]);
    
    Dim totalSheets As Integer = Application.ActiveWorkbook.Sheets.Count
    Globals.Sheet1.Move(After:=Globals.ThisWorkbook.Sheets(totalSheets))
    

Pour déplacer une feuille de calcul dans un complément VSTOTo move a worksheet in an VSTO Add-in

  1. Affectez le nombre total de feuilles dans le classeur à une variable, puis déplacez la première feuille de calcul pour qu’elle devienne la dernière.Assign the total number of sheets in the workbook to a variable and then move the first worksheet so that it becomes the last one.

    int totalSheets = this.Application.ActiveWorkbook.Sheets.Count;
    ((Excel.Worksheet)Application.ActiveSheet).Move(
        this.Application.Worksheets[totalSheets]);
    
    Dim totalSheets As Integer = Application.ActiveWorkbook.Sheets.Count
    CType(Application.ActiveSheet, Excel.Worksheet).Move(After:=Application.Worksheets(totalSheets))
    

Voir aussiSee Also

Utilisation des feuilles de calcul Working with Worksheets
Comment : masquer des feuilles de calcul par programmation How to: Programmatically Hide Worksheets
Comment : supprimer par programmation des feuilles de calcul des classeurs How to: Programmatically Delete Worksheets from Workbooks
Comment : protéger des feuilles de calcul par programmation How to: Programmatically Protect Worksheets
Accès global aux objets dans les projets OfficeGlobal Access to Objects in Office Projects