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]]] )
$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) |
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 |
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.
#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'.")
#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.")