UDF > Excel >


_Excel_RangeLinkAddRemove

Ajoute ou supprime un lien hypertexte vers/depuis une plage

#include <Excel.au3>
_Excel_RangeLinkAddRemove ( $oWorkbook, $vWorksheet, $vRange, $sAddress [, $sSubAddress = Default [, $sScreenTip = Default [, $sTextToDisplay = Default]]] )

Param�tres

$oWorkbook Objet classeur Excel
$vWorksheet Nom, index ou objet de feuille de calcul � utiliser. Si la valeur est le mot-cl� Default, la feuille active sera utilis�e
$vRange Un objet plage ou une plage au format $xlA1 o� d�finir le lien hypertexte
$sAddress L'adresse du lien sp�cifi�. L'adresse peut �tre une adresse e-mail, une adresse Internet ou un nom de fichier. "" supprime un lien hypertexte existant
$sSubAddress [optionnel] Le nom de l'emplacement du fichier de destination, comme un signet, une plage nomm�e ou un num�ro de diapositive (par d�faut = mot-cl� Default = None)
$sScreenTip [optionnel] Le texte qui appara�t dans une bulle lorsque le pointeur de la souris est positionn� sur le lien hypertexte sp�cifi�e (par d�faut = mot-cl� Default = la valeur de $sAddress)
$sTextToDisplay [optionnel] Le texte qui sera affich� pour le lien hypertexte (par d�faut = mot-cl� Default = None)

Valeur de retour

Succ�s: Retourne un objet Hyperlinks quand un lien est d�fini ou 1 quand un lien est supprim�.
�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 de $vWorksheet n'est pas valide ou $vWorksheet n'est pas un objet Worksheet (feuille de calcul). @extended contient le code d'erreur COM
3 - $vRange n'est pas valable. @extended contient le code d'erreur COM
4 - Une erreur s'est produite lors de l'ajout/la suppression du lien hypertexte. @extended contient le code d'erreur COM

Remarque

Notez qu'Excel �crit seulement $sTextToDisplay dans la cellule du coin sup�rieure gauche de la plage (si la cellule est vide). Les cellules restantes de la plage restent inchang�es.

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_RangeLinkAddRemove-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_RangeLinkAddRemove-Exemple", "Erreur lors de l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; Ajoute un lien vers les cellules A1:C1
_Excel_RangeLinkAddRemove($oWorkbook, $oWorkbook.Activesheet, "A1:C1", "http://www.autoitscript.com", Default, "AutoIt Homepage")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeLinkAddRemove-Exemple 1", "Erreur lors du param�trage hyperlink." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeLinkAddRemove-Exemple 1", "Lien install� vers les cellules 'A1:C3'.")

; Supprime le lien vers la cellule A1:C1
_Excel_RangeLinkAddRemove($oWorkbook, $oWorkbook.Activesheet, "A1:C1", "")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeLinkAddRemove-Exemple 2", "Erreur lors du param�trage hyperlink." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
MsgBox($MB_SYSTEMMODAL, "UDF Excel: _Excel_RangeLinkAddRemove-Exemple 2", "Lien supprim� vers les cellules 'A1:C3'.")

Exemple 2

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

; Cr�e un objet Excel et ouvre un exemple de classeur
Local $oExcel = _Excel_Open()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: Exemple _Excel_RangeLinkAddRemove", "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: Exemple _Excel_RangeLinkAddRemove", "Erreur dans l'ouverture du classeur '" & @ScriptDir & "\Extras\_Excel1.xls'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
    _Excel_Close($oExcel)
    Exit
EndIf

; Ins�re une feuille d'index contenant les liens vers toutes les autres feuilles.
; G�re les noms des feuilles avec des espaces corrects.
Local $oSheet = _Excel_SheetAdd($oWorkbook, 1, True, 1, "Index")
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "UDF Excel: Exemple3 _Excel_RangeLinkAddRemove", "Erreur dans l'ajout 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
    _Excel_RangeLinkAddRemove($oWorkbook, $oSheet, $oSheet.Cells($iRow, 2), $oWorkbook.Fullname, "'" & $oSheet.Cells($iRow, 2).Value & "'!A1")
    $iRow = $iRow + 1
Next
MsgBox($MB_SYSTEMMODAL, "UDF Excel: Exemple3 _Excel_RangeLinkAddRemove", "La feuille d'index est ins�r�e comme feuille 1.")