Comment : remplir automatiquement des plages avec des données soumises à modification incrémentielle par programmation
La méthode AutoFill de l'objet Microsoft.Office.Interop.Excel.Range vous permet de remplir automatiquement une plage d'une feuille de calcul avec des valeurs.En règle générale, la méthode AutoFill est utilisée pour stocker dans une plage des valeurs soumises à une augmentation ou une diminution incrémentielle.Vous pouvez spécifier son comportement en fournissant une constante facultative provenant de l'énumération XlAutoFillType.
S'applique à : Les informations contenues dans cette rubrique s'appliquent aux projets de niveau document et de niveau application pour Excel 2013 et Excel 2010. Pour en savoir plus, consultez Fonctionnalités disponibles par type d'application et de projet Office.
Vous devez spécifier deux plages lors de l'utilisation de AutoFill :
La plage appelant la méthode AutoFill, qui spécifie le point de départ du remplissage et contient une valeur initiale.
La plage à remplir, passée comme paramètre à la méthode AutoFill.Cette plage de destination doit inclure la plage qui contient la valeur initiale.
[!REMARQUE]
Vous ne pouvez pas passer un contrôle Microsoft.Office.Tools.Excel.NamedRange à la place du contrôle Microsoft.Office.Interop.Excel.Range.Pour plus d’informations, consultez Limitations de programmation des éléments hôtes et des contrôles hôtes.
Exemple
Private Sub AutoFill()
Dim rng As Excel.Range = Me.Application.Range("B1")
rng.AutoFill(Me.Application.Range("B1:B5"), Excel.XlAutoFillType.xlFillWeekdays)
rng = Me.Application.Range("C1")
rng.AutoFill(Me.Application.Range("C1:C5"), Excel.XlAutoFillType.xlFillMonths)
rng = Me.Application.Range("D1:D2")
rng.AutoFill(Me.Application.Range("D1:D5"), Excel.XlAutoFillType.xlFillSeries)
End Sub
private void AutoFill()
{
Excel.Range rng = this.Application.get_Range("B1");
rng.AutoFill(this.Application.get_Range("B1","B5"),
Excel.XlAutoFillType.xlFillWeekdays);
rng = this.Application.get_Range("C1");
rng.AutoFill(this.Application.get_Range("C1","C5"),
Excel.XlAutoFillType.xlFillMonths);
rng = this.Application.get_Range("D1","D2");
rng.AutoFill(this.Application.get_Range("D1","D5"),
Excel.XlAutoFillType.xlFillSeries);
}
Compilation du code
La première cellule de la plage à remplir doit contenir une valeur initiale.
L'exemple requiert que vous remplissiez trois régions :
La colonne B doit inclure cinq jours de semaine.Pour la valeur initiale, tapez Lundi dans la cellule B1.
La colonne C doit inclure cinq mois.Pour la valeur initiale, tapez Janvier dans la cellule C1.
La colonne D doit inclure une série de chiffres, augmentant de deux unités pour chaque ligne.Pour les valeurs initiales, tapez 4 dans la cellule D1 et 6 dans la cellule D2.
Voir aussi
Tâches
Comment : faire référence aux plages de la feuille de calcul dans le code par programmation
Comment : appliquer des styles à des plages dans les classeurs par programmation
Comment : exécuter des calculs Excel par programmation