Convertit les r�f�rences des cellules d'une formule entre les styles A1 et R1C1, ainsi que les types de r�f�rence relatif ou absolue, ou les deux
#include <Excel.au3>
_Excel_ConvertFormula ( $oExcel, $sFormula, $iFromStyle [, $iToStyle = Default [, $iToAbsolute = Default [, $vRelativeTo = Default]]] )
$oExcel | Objet application Excel |
$sFormula | Cha�ne contenant la formule � convertir |
$iFromStyle | Le style de r�f�rence de la formule. Peut �tre toute valeur de l'�num�ration XlReferenceStyle |
$iToStyle | [optionnel] Une valeur de l'�num�ration XlReferenceStyle sp�cifiant le style de r�f�rence � retourner. En cas d'omission, le style de r�f�rence n'est pas modifi�e |
$iToAbsolute | [optionnel] Une valeur de XlReferenceType qui sp�cifie le type de r�f�rence de convertion. Si cet argument est omis, le type de r�f�rence n'est pas modifi�e |
$vRelativeTo | [optionnel] Un objet Range ou une plage A1 qui contient une cellule. Les r�f�rences relatives se rapportent � cette cellule. Si omis, A1 est utilis�e |
Succ�s: | Retourne la formule convertie sous forme de cha�ne. |
�chec: | Retourne "" et d�finit @error <> 0. |
@error: | 1 - $oExcel n'est pas un objet ou n'est pas un objet application 2 - $vRelativeTo n'est pas un objet ou une plage invalide |
Les r�f�rences R1C1 d�pendent de la langue.
En anglais: "R10C5"(ligne 10 colonne 5), en allemand: "Z10S5"(Zeile 10 Spalte 5)
#include <Excel.au3> #include <MsgBoxConstants.au3> ; Cr�e un objet Excel et ouvre un nouveau classeur Local $oExcel = _Excel_Open() If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended) Local $oWorkbook = _Excel_BookNew($oExcel) If @error Then MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple", "Erreur lors de la cr�ation du nouveau classeur." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _Excel_Close($oExcel) Exit EndIf ; **************************************************************************** ; Convertit un objet Range A1 en R1C1 et inversement ; **************************************************************************** Local $sFormula = "C4:G12" ; Relatif: A1 en R1C1 Local $sR1C1 = _Excel_ConvertFormula($oExcel, $sFormula, $xlA1, $xlR1C1, $xlRelative) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple 1", "Erreur lors de la conversion de la formule dans le style R1C1." & @CRLF & "@error = " & @error & ", @extended = " & @extended) ; R1C1 en A1 Local $sA1 = _Excel_ConvertFormula($oExcel, $sR1C1, $xlR1C1, $xlA1, $xlRelative) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple 1", "Erreur lors de la conversion de la formule dans le style A1." & @CRLF & "@error = " & @error & ", @extended = " & @extended) ; Affiche le r�sultat MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple 1", "Type de conversion: Relatif" & @CRLF & " A1 en style R1C1: " & $sFormula & " to " & $sR1C1 & @CRLF & " R1C1 en style A1: " & $sR1C1 & " en " & $sA1) ; Absolue: A1 � R1C1 $sR1C1 = _Excel_ConvertFormula($oExcel, $sFormula, $xlA1, $xlR1C1, $xlAbsolute) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple 1", "Erreur lors de la conversion de la formule dans le style R1C1." & @CRLF & "@error = " & @error & ", @extended = " & @extended) ; R1C1 en A1 $sA1 = _Excel_ConvertFormula($oExcel, $sR1C1, $xlR1C1, $xlA1, $xlAbsolute) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple 1", "Erreur lors de la conversion de la formule dans le style A1." & @CRLF & "@error = " & @error & ", @extended = " & @extended) ; Affiche le r�sultat MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple 1", "Type de conversion: Absolue" & @CRLF & " A1 en style R1C1: " & $sFormula & " en " & $sR1C1 & @CRLF & " R1C1 en style A1: " & $sR1C1 & " en " & $sA1)
#include <Excel.au3> #include <MsgBoxConstants.au3> ; Cr�e un objet Excel et ouvre un nouveau classeur Local $oExcel = _Excel_Open() If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple", "Erreur lors de la cr�ation de l'objet Excel." & @CRLF & "@error = " & @error & ", @extended = " & @extended) Local $oWorkbook = _Excel_BookNew($oExcel) If @error Then MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple", "Erreur lors de la cr�ation du nouveau classeur." & @CRLF & "@error = " & @error & ", @extended = " & @extended) _Excel_Close($oExcel) Exit EndIf ; ***************************************************************************** ; Convertit une formule du style A1 en R1C1 et utilise une r�f�rence relative ; ***************************************************************************** Local $sFormula = "=SUM(C4:G12)", $sReference = "B2" Local $sConverted = _Excel_ConvertFormula($oExcel, $sFormula, $xlA1, $xlR1C1, $xlRelative, $oExcel.Range($sReference)) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple 2", "Erreur lors de la conversion de la formule." & @CRLF & "@error = " & @error & ", @extended = " & @extended) MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_ConvertFormula-Exemple 2", "Convertit une formule A1 en R1C1 et utilise " & $sReference & " comme r�f�rence relative:" & @CRLF & $sFormula & " en " & $sConverted)