在Python中创建Excel超链接

在Python中创建Excel超链接,python,excel,python-2.7,win32com,Python,Excel,Python 2.7,Win32com,我正在使用win32com修改Excel电子表格(同时读取和编辑),我知道还有其他模块可以执行其中一项或另一项操作,但对于我正在执行的应用程序,我需要同时读取和处理它 最后一步是根据路径名创建一些超链接。以下是我迄今为止的一个例子: import win32com.client excel = r'I:\Custom_Scripts\Personal\Hyperlinks\HyperlinkTest.xlsx' xlApp = win32com.client.Dispatch("Excel

我正在使用win32com修改Excel电子表格(同时读取和编辑),我知道还有其他模块可以执行其中一项或另一项操作,但对于我正在执行的应用程序,我需要同时读取和处理它

最后一步是根据路径名创建一些超链接。以下是我迄今为止的一个例子:

import win32com.client


excel = r'I:\Custom_Scripts\Personal\Hyperlinks\HyperlinkTest.xlsx'

xlApp = win32com.client.Dispatch("Excel.Application")
workbook = xlApp.Workbooks.Open(excel)
worksheet = workbook.Worksheets("Sheet1")


for xlRow in xrange(1, 10, 1):
    a = worksheet.Range("A%s"%(xlRow)).Value
    if a == None:
        break
    print a

workbook.Close()
我发现了一些使用win32com读取超链接的代码:

sheet.Range("A8").Hyperlinks.Item(1).Address
但不是如何设置超链接

有人能帮我吗?

大量借用了这个问题,因为我在SO上找不到任何可以作为副本链接的内容

此代码将在单元格中创建超链接
A1:A9

import win32com.client

excel = r'I:\Custom_Scripts\Personal\Hyperlinks\HyperlinkTest.xlsx'

xlApp = win32com.client.Dispatch("Excel.Application")
workbook = xlApp.Workbooks.Open(excel)
worksheet = workbook.Worksheets("Sheet1") 

for xlRow in xrange(1, 10, 1):
    worksheet.Hyperlinks.Add(Anchor = worksheet.Range('A{}'.format(xlRow)),
                             Address="http://www.microsoft.com",
                             ScreenTip="Microsoft Web Site",
                             TextToDisplay="Microsoft")
workbook.Save()
workbook.Close()
这里有一个链接,指向的是
超链接.Add()
方法。

大量借用了这个问题,因为我找不到任何可以作为副本链接到的内容

此代码将在单元格中创建超链接
A1:A9

import win32com.client

excel = r'I:\Custom_Scripts\Personal\Hyperlinks\HyperlinkTest.xlsx'

xlApp = win32com.client.Dispatch("Excel.Application")
workbook = xlApp.Workbooks.Open(excel)
worksheet = workbook.Worksheets("Sheet1") 

for xlRow in xrange(1, 10, 1):
    worksheet.Hyperlinks.Add(Anchor = worksheet.Range('A{}'.format(xlRow)),
                             Address="http://www.microsoft.com",
                             ScreenTip="Microsoft Web Site",
                             TextToDisplay="Microsoft")
workbook.Save()
workbook.Close()

这里是指向超链接的链接。Add()方法。

TextToDisplay未按预期工作。地址按原样显示,没有被“Microsoft”文本屏蔽。有人知道为什么会这样吗?如果这个解决方案不适合你,你最好问一个新问题。这个答案已经有四年历史了,office API很可能已经在继续。如果出现新版本问题,欢迎对此问题的答案进行编辑,按原样运行您的代码将生成excel文件,其中包含http:/www.microsoft.com,重复9次,没有任何文本屏蔽。如果你不介意的话,你可以在你的终端运行它,看看你是否得到了一个不同的解决方案。我觉得少了一些小问题,所以我没有问新问题。如果你得到了一个不同的解决方案(正确的掩蔽方案),那么我可能会问一个新问题..对不起,我现在还不能运行这个代码。很明显,它至少对另外两个人有效,因此,如果它对你无效,那么最好是诚实地问另一个问题,说明这个答案对你无效,以避免它可能被标记为重复文本。ToDisplay没有按预期工作。地址按原样显示,没有被“Microsoft”文本屏蔽。有人知道为什么会这样吗?如果这个解决方案不适合你,你最好问一个新问题。这个答案已经有四年历史了,office API很可能已经在继续。如果出现新版本问题,欢迎对此问题的答案进行编辑,按原样运行您的代码将生成excel文件,其中包含http:/www.microsoft.com,重复9次,没有任何文本屏蔽。如果你不介意的话,你可以在你的终端运行它,看看你是否得到了一个不同的解决方案。我觉得少了一些小问题,所以我没有问新问题。如果你得到了一个不同的解决方案(正确的掩蔽方案),那么我可能会问一个新问题..对不起,我现在还不能运行这个代码。很明显,它至少对另外两个人有效,所以如果它对你无效,那么最好是诚实地问另一个问题,说明这个答案对你无效,以避免它可能被标记为重复