Funktionreferenz


_Excel_RangeInsert

Beschreibung anzeigen in

Fügt eine oder mehrere leere Zellen, Zeilen oder Spalten in das angegebene Arbeitsblatt ein

#include <Excel.au3>
_Excel_RangeInsert ( $oWorksheet, $vRange [, $iShift = Default [, $iCopyOrigin = Default]] )

Parameter

$oWorksheet Excel Arbeitsblatt-Objekt
$vRange Kann ein Bereichs-Objekt oder ein A1 Bereich sein (z.B. "A1:B2", "1:2" (Zeile 1 bis 2), "D:G" (Spalte D bis G) etc.)
$iShift [optional] Gibt an wie die Zellen verschoben werden sollen. Akzeptiert xlShiftToRight oder xlShiftDown von der XlInsertShiftDirection Aufzählung.
    Wenn der Parameter auf das Schlüsselwort Default gesetzt ist, entscheidet Excel basierend auf der Art des Bereiches (Standard = Schlüsselwort Default)
$iCopyOrigin [optional] Gibt an, welche Formatierungsoption kopiert werden soll. Kann ein Wert aus der XlInsertFormatOrigin Aufzählung sein (Standard = Schlüsselwort Default)

Rückgabewert

Erfolg: Das Bereichs-Objekt, welches die eingefügten Zellen, Zeilen oder Spalten beinhaltet
Fehler: 0 und setzt @error.
@error: 1 - $oWorksheet ist kein Objekt oder Arbeitsblatt-Objekt
2 - $vRange ist falsch. @extended ist auf den COM Fehlercode gesetzt
3 - Beim Einfügen der Zellen trat ein Fehler auf. @extended wird auf den COM Fehlercode gesetzt

Bemerkungen

Der angegebene Bereich wird oberhalb oder links vom angegebenen Bereich eingefügt, abhängig vom Parameter $iShift.

Beispiel

Beispiel 1

#include <Excel.au3>
#include <MsgBoxConstants.au3>

; Anwendungsobjekt erstellen und eine Beispielarbeitsmappe öffnen
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example", "Fehler beim Erstellen des Excel-Anwendungsobjekts." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls")
If @error Then
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example", "Fehler beim Öffnen der Arbeitsmappe '" & @ScriptDir & "\Extra\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; Einen Bereich mit 3 Zeilen und 2 Spalten vor A1 auf dem aktiven Arbeitsblatt einfügen
; und die Zellen nach unten verschieben.
_Excel_RangeInsert($oWorkbook.Activesheet, "A1:B3", $xlShiftDown)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example 1", "Fehler beim Einfügen von Zellen." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example 1", "Bereich erfolgreich eingefügt.")

Beispiel 2

#include <Excel.au3>
#include <MsgBoxConstants.au3>

; Anwendungsobjekt erstellen und eine Beispielarbeitsmappe öffnen
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example", "Fehler beim Erstellen des Excel-Anwendungsobjekts." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls")
If @error Then
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example", "Fehler beim Öffnen der Arbeitsmappe '" & @ScriptDir & "\Extra\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; 3 Spalten vor Spalte B auf dem aktiven Arbeitsblatt einfügen
_Excel_RangeInsert($oWorkbook.Activesheet, "B:D")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example 2", "Fehler beim Einfügen von Spalten." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example 2", "3 Spalten erfolgreich vor Spalte B eingefügt.")

Beispiel 3

#include <Excel.au3>
#include <MsgBoxConstants.au3>

; Anwendungsobjekt erstellen und eine Beispielarbeitsmappe öffnen
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example", "Fehler beim Erstellen des Excel-Anwendungsobjekts." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls")
If @error Then
    MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example", "Fehler beim Öffnen der Arbeitsmappe '" & @ScriptDir & "\Extra\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; 2 Zeilen vor Zeile 1 auf Arbeitsblatt 2 einfügen
_Excel_RangeInsert($oWorkbook.Worksheets(2), "1:2")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example 3", "Fehler beim Einfügen von Zeilen." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_RangeInsert Example 3", "Zeilen erfolgreich in Arbeitsblatt 2 eingefügt.")