UDF > Excel >


_Excel_BookOpenText

Ouvre un fichier texte et exporte le contenu vers un nouveau classeur dans une seule feuille

#include <Excel.au3>
_Excel_BookOpenText ( $oExcel, $sFilePath [, $iStartRow = 1 [, $iDataType = Default [, $sTextQualifier = $xlTextQualifierDoubleQuote [, $bConsecutiveDelimiter = False [, $sDelimiter = "," [, $aFieldInfo = "" [, $sDecimalSeparator = Default [, $sThousandsSeparator = Default [, $bTrailingMinusNumbers = True [, $iOrigin = Default]]]]]]]]]] )

Paramètres

$oExcel Objet application Excel dans laquelle vous voulez ouvrir le nouveau classeur
$sFilePath Chemin et le nom du fichier à ouvrir
$iStartRow [optionnel] La ligne à partir de laquelle commencer l'exportation du fichier (par défaut = 1)
$iDataType [optionnel] Spécifie le format de la colonne des données dans le fichier. Peut prendre toute valeur de l'énumération XlTextParsingType.
    Si la valeur est le mot-clé Default, Excel tente de déterminer le format de la colonne (par défaut = mot-clé par Default)
$sTextQualifier [optionnel] Indique le qualificatif de texte (par défaut = $xlTextQualifierDoubleQuote)
$bConsecutiveDelimiter [optionnel] True considèrera des séparateurs consécutifs comme un séparateur (par défaut = False )
$sDelimiter [optionnel] Un ou plusieurs caractères à utiliser comme séparateur (par défaut =",")
$aFieldInfo [optionnel] Un tableau contenant des informations pour chaque colonne de données.
    L'interprétation dépend de la valeur de DataType.
    Lorsque les données sont délimitées, cet argument est un tableau à deux éléments, et chaque élément est un tableau à deux éléments
    Indication des options de conversion pour une colonne particulière.
    Le premier élément est le numéro de colonne (à partir de 1), et le second élément est l'un des XlColumnDataType
    Constantes précisant comment la colonne est analysée (par défaut = mot-clé Default )
$sDecimalSeparator [optionnel] Séparateur décimal que Excel doit utiliser lors de la reconnaissance des nombres.
    Le paramètre par défaut est celui du système (par défaut = mot-clé Default)
$sThousandsSeparator [optionnel] Séparateur des milliers que Excel doitutilise lors de la reconnaissance des nombres.
    Le paramètre par défaut est celui du système (par défaut = mot-clé Default)
$bTrailingMinusNumbers [optionnel] True traite les nombres avec le caractère moins à la fin comme des nombres négatifs.
    False traite ces nombres sous forme de texte (par défaut = True)
$iOrigin [optionnel] Origine du fichier texte. Peut être l'une des constantes de XlPlatform.
    En outre, cela pourrait être un entier représentant le numéro de la page de code de la page de code désirée.
    Par exemple, "1256" précise que le codage est l'arabe (Windows).
    Si cet argument est omis, la méthode utilise le paramètre courant de l'option File Origin dans l'Assistant Importation de texte.

Valeur de retour

Succès: Retourne un objet classeur.
Échec: Retourne 0 et définit @error <> 0.
@error: 1: $oExcel n'est pas un objet ou n'est pas un objet application
2: Le fichier $sFilePatch n'existe pas
3: Impossible d'ouvrir ou d'analyser $sFilePath. @extended contient le code d'erreur COM renvoyé par la méthode OpenText

Remarque

Le paramètre $aFieldInfo doit être un tableau contenant des tableaux, pas un tableau 2D. Voir Exemple 2.

En relation

_Excel_BookAttach, _Excel_BookClose, _Excel_BookNew, _Excel_BookOpen

Exemples

Exemple 1

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

; Crée un objet Excel
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox(16, "UDF Excel: _Excel_BookOpenText-Exemple", "Erreur lors de la création de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)

; *****************************************************************************
; Ouvre un fichier texte avec séparateurs, séparateur = |, passe FieldInfo et définit
; DecimalSeparator et ThousandsSeparator.
; *****************************************************************************
Local $sTextFile = @ScriptDir & "\Extras\_Excel1.txt"
Local $aField1[2] = [1, $xlTextFormat]
Local $aField2[2] = [2, $xlTextFormat]
Local $aField3[2] = [3, $xlGeneralFormat]
Local $aField4[2] = [4, $xlDMYFormat]
Local $aField5[2] = [5, $xlTextFormat]
Local $aFieldInfo[5] = [$aField1, $aField2, $aField3, $aField4, $aField5]
_Excel_BookOpenText($oExcel, $sTextFile, Default, $xlDelimited, Default, True, "|", $aFieldInfo, ",", ".")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookOpenText-Exemple 1", "Erreur lors de l'ouverture de '" & $sTextFile & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookOpenText-Exemple 1", "Le classeur '" & $sTextFile & "' a été ouvert avec succès.")


Exemple 2

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

; Crée un objet Excel
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox(16, "UDF Excel: _Excel_BookOpenText-Exemple 2", "Erreur lors de la création de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended)

; *****************************************************************************
; Ouvre un fichier texte tel quel, tous les autres paramètres seront déterminés par Excel
; *****************************************************************************
Local $sTextFile = @ScriptDir & "\Extras\_Excel2.txt"
_Excel_BookOpenText($oExcel, $sTextFile, Default, $xlFixedWidth)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookOpenText-Exemple 2", "Erreur lors de l'ouverture '" & $sTextFile & "'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_BookOpenText-Exemple 2", "Le classeur '" & $sTextFile & "' a été ouvert avec succès.")