Gewusst wie: Programmgesteuertes automatisches Füllen von Bereichen mit inkrementellen Daten
Mit der AutoFill-Methode des Microsoft.Office.Interop.Excel.Range-Objekts können Sie einen Bereich in einem Arbeitsblatt automatisch mit Werten füllen.Die AutoFill-Methode wird hauptsächlich zum Speichern von inkrementell aufsteigenden bzw. absteigenden Werten in einem Bereich verwendet.Sie können das Verhalten festlegen, indem Sie eine optionale Konstante aus der XlAutoFillType-Enumeration angeben.
Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Dokument- und auf Anwendungsebene für Excel 2013 und Excel 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.
Sie müssen zwei Bereiche angeben, wenn Sie AutoFill verwenden:
Den die AutoFill-Methode aufrufenden Bereich, der den Ausgangspunkt für den Füllvorgang festlegt und einen Anfangswert enthält.
Der Bereich, den Sie füllen möchten, und der als Parameter an die AutoFill-Methode übergeben wird.Dieser Zielbereich muss den Bereich einschließen, der den Anfangswert enthält.
Hinweis Sie können kein Microsoft.Office.Tools.Excel.NamedRange-Steuerelement anstelle von Microsoft.Office.Interop.Excel.Range übergeben.Weitere Informationen finden Sie unter Programmgesteuerte Einschränkungen von Hostelementen und Hoststeuerelementen.
Beispiel
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);
}
Kompilieren des Codes
Die erste Zelle des zu füllenden Bereichs muss einen Anfangswert enthalten.
Das Beispiel erfordert, dass Sie drei Bereiche füllen:
Spalte B soll fünf Wochentage enthalten.Geben Sie in Zelle B1 Montag als Anfangswert ein.
Spalte C soll fünf Monate enthalten.Geben Sie in Zelle C1 Januar als Anfangswert ein.
Spalte D muss Zahlenfolgen enthalten, die in jeder Zeile um zwei zunehmen.Geben Sie als Anfangswerte in Zelle D1 4 und in Zelle D2 6 ein.
Siehe auch
Aufgaben
Gewusst wie: Programmgesteuertes Verweisen auf Arbeitsblattbereiche im Code
Gewusst wie: Programmgesteuertes Anwenden von Formaten auf Bereiche in Arbeitsmappen
Gewusst wie: Programmgesteuertes Ausführen von Excel-Berechnungen