J'ai eu besoin pour un script du boulot de sélectionner (activer) une cellule de la feuille excel active. A partir des fonctions contenues dans l'UDF, je me suis bricolé la fonction suivante :
Code : Tout sélectionner
; #FUNCTION# ====================================================================================================================
; Name...........: _ExcelCellActivate
; Description ...: Activate a cell into the active page.
; Syntax.........: _ExcelCellActivate($oExcel, $sRangeOrRow, $iColumn = 1)
; Parameters ....: $oExcel - An Excel object opened by a preceding call to _ExcelBookOpen() or _ExcelBookNew()
; $sRangeOrRow - The range in A1 format, or a row number for R1C1 format
; $iColumn - The specified column number for R1C1 format (default = 1)
; Return values .: Success - Returns 1
; Failure - Returns 0 and sets @error on errors:
; @error=1 - Specified object does not exist
; @error=2 - Row or column invalid
; @extended=0 - Row invalid
; @extended=1 - Column invalid
; Author ........: LTR
; Modified.......:
; Remarks .......: None
; Related .......:
; Link ..........;
; Example .......; Yes
; ===============================================================================================================================
Func _ExcelCellActivate($oExcel, $sRangeOrRow, $iColumn = 1)
If Not IsObj($oExcel) Then Return SetError(1, 0, 0)
If Not StringRegExp($sRangeOrRow, "[A-Z,a-z]", 0) Then
If $sRangeOrRow < 1 Then Return SetError(2, 0, 0)
If $iColumn < 1 Then Return SetError(2, 1, 0)
$oExcel.ActiveSheet.Cells($sRangeOrRow, $iColumn).Activate
Else
$oExcel.ActiveSheet.Range($sRangeOrRow).Activate
EndIf
Return 1
EndFunc ;==>_ExcelCellActivate
Cordialement.