Trouve et remplace des concordances de chaînes dans une plage ou une feuille de calcul
#include <Excel.au3>
_Excel_RangeReplace ( $oWorkbook, $vWorksheet, $vRange, $sSearch, $sReplace [, $iLookAt = $xlPart [, $bMatchcase = False]] )
$oWorkbook | Objet classeur Excel |
$vWorksheet | Nom, index ou objet feuille de calcul à rechercher. Si la valeur est le mot-clé Default, la feuille active sera utilisée |
$vRange | L'objet plage, la plage au format $xlA1 ou le mot-clé Default pour rechercher dans toutes les cellules de la feuille de calcul spécifiée |
$sSearch | Chaîne à rechercher |
$sReplace | Chaîne de remplacement |
$iLookAt | [optionnel] Indique si le texte de recherche doit correspondre à l'ensemble ou à une partie. Peut être toute valeur de l'énumération XLLookAt (par défaut = $xlPart) |
$bMatchcase | [optionnel] True = sensible à la casse, Faux = insensible à la casse (par défaut = False) |
Succès: | Retourne l'objet plage et définit @extended à 1 si les cellules ont été modifiées. |
Échec: | Retourne 0 et définit @error <> 0. |
@error: | 1 - $oWorkbook n'est pas un objet ou n'est pas un objet classeur 2 - Le nom ou l'index $vWorksheet n'est pas valide ou $vWorksheet n'est pas un objet feuille de calcul. @extended contient le code d'erreur COM 3 - $sSearch est vide 4 - $vRange n'est pas valide. @extended contient le code d'erreur COM 5 - Erreur renvoyée par la méthode Replace. @extended contient le code d'erreur COM |
#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_RangeReplace-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_RangeReplace-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _Excel_Close($oExcel) Exit EndIf ; ***************************************************************************** ; Remplace le contenu de la cellule A1 par une autre valeur ; ***************************************************************************** MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeReplace-Exemple 1", "Pressez OK pour modifier la cellule 'A1'.") _Excel_RangeReplace($oWorkbook, Default, "A1", 1, 3.37) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeReplace-Exemple 1", "Erreur lors du remplacement dans la plage." & @CRLF & "@error = " & @error & ", @extended = " & @extended) MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeReplace-Exemple 1", "Donnée remplacée avec succès dans la cellule 'A1'.")
#include <Excel.au3> #include <MsgBoxConstants.au3> ; Crée un objet Excel et ouvre un classeur exemple Local $oExcel = _Excel_Open() If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeReplace-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_RangeReplace-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _Excel_Close($oExcel) Exit EndIf ; ***************************************************************************** ; Trouve toutes les cellules avec le texte "long " et le supprime (le remplace par "") ; ***************************************************************************** MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeReplace-Exemple 1", "Pressez OK pour modifier la cellule 'G1'.") _Excel_RangeReplace($oWorkbook, Default, Default, "long ", "") If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeReplace-Exemple 2", "Erreur lors du remplacement de la donnée." & @CRLF & "@error = " & @error & ", @extended = " & @extended) MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeReplace-Exemple 2", "Supprime le texte 'long '." & @CRLF & "Donnée remplacée avec succès.")