!DOCTYPE html>

UDF > Excel >


_Excel_SheetAdd

Ajoute de nouvelles feuilles � un classeur et d�finit leur nom

#include <Excel.au3>
_Excel_SheetAdd ( $oWorkbook [, $vSheet = Default [, $bBefore = True [, $iCount = 1 [, $sName = ""]]]] )

Param�tres

$oWorkbook Un objet classeur
$vSheet [optionnel] Objet, index ou nom de la feuille qui sera avant/apr�s de la nouvelle feuille � ins�rer.
    -1 = Ins�re avant/apr�s la derni�re feuille (par d�faut = mot-cl� Default = feuille de calcul active)
$bBefore [optionnel] La nouvelle feuille sera ins�r�e avant $vSheet si True, apr�s $vSheet si False (par d�faut = True)
$iCount [optionnel] Nombre de feuilles � ins�rer (par d�faut = 1). Le maximum est de 255
$sName [optionnel] Nom(s) des feuille(s) � cr�er (par d�faut = "" = convention standard des nouvelles feuilles Excel).
    Lorsque $iCount > 1 les noms multiples peuvent �tre fournis s�par�s par | (barre verticale). Les feuilles sont nomm�es de gauche � droite

Valeur de retour

Succ�s: Retourne l'objet (premi�re) feuille ajout�e.
�chec: Retourne 0 et d�finit @error <> 0.
@error: 1 - $oWorkbook n'est pas un objet ou n'est pas un objet classeur
2 - $vSheet n'est pas valide. Le nom ou l'index n'existe pas. @extended contient le code d'erreur COM
3 - La feuille sp�cifi�e existe d�j�. @extended contient le nombre de noms dans $sName
4 - Une erreur s'est produite lors de l'ajout de la feuille. @extended contient le code d'erreur COM
5 - Une erreur s'est produite lors de la cr�ation du nom de la nouvelle(s) feuille(s). @extended contient le code d'erreur COM
6 - Le param�tre $iCount > 255

En relation

_Excel_SheetDelete

Exemples

Exemple 1

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

; Cr�e un objet Excel et ouvre un classeur
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls")
If @error Then
    MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\_Extras\Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; *****************************************************************************
; Ins�re deux feuilles apr�s la derni�re feuille et les nomme
; *****************************************************************************
_Excel_SheetAdd($oWorkbook, -1, False, 2, "Test1|Test2")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple 1", "Erreur lors de l'addition des feuilles." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple 1", "Deux feuilles ajout�es apr�s la derni�re.")


Exemple 2

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

; Cr�e un objet Excel et ouvre un classeur
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls", True)
If @error Then
    MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; *****************************************************************************
; Ins�re une feuille avant la feuille 2. Le nom est le nom par d�faut
; *****************************************************************************
_Excel_SheetAdd($oWorkbook, 2)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple 2", "Erreur lors de l'addition de la feuille." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple 2", "Feuille ajout�e avant la feuille 2.")


Exemple 3

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

; Cr�e un objet Excel et ouvre un classeur
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\Extras\_Excel1.xls", True)
If @error Then
    MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; *****************************************************************************
; Ins�re une feuille d�finie par son index avec des liens vers toutes les autres feuilles
; Noms des feuilles g�r�s avec les espaces corrects.
; *****************************************************************************
Local $oSheet = _Excel_SheetAdd($oWorkbook, 1, True, 1, "Index")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple 3", "Erreur lors de l'addition de la feuille." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
$oSheet.Range("A1").Value = "Index"
Local $iRow = 2
For $iSheet = 2 To $oWorkbook.Sheets.Count
    $oSheet.Cells($iRow, 1).Value = $iRow - 1
    $oSheet.Cells($iRow, 2).Value = $oWorkbook.Worksheets($iRow).Name
    $oSheet.Hyperlinks.Add($oSheet.Cells($iRow, 2), "", $oSheet.Cells($iRow, 2).Value & "!A1")
    $iRow = $iRow + 1
Next
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_SheetAdd-Exemple 3", "L'index de la feuille ins�r�e est 1.")