gpt4 book ai didi

c# - 从 Excel 单元格中的超链接文本中提取 URL

转载 作者:太空狗 更新时间:2023-10-29 18:13:55 39 4
gpt4 key购买 nike

我在 excel 中有一个充满超链接文本的表格,所以它基本上是一堆名称,但是当我单击其中一个时,它会将我带到默认浏览器中的某个 URL。

所以我在我的程序中从这个 excel 表中提取文本,但是当我从这些超链接单元格中提取时,我得到的值是内部字符串的值,当我想要 excel 文件中字符串链接到的 URL 时。

所以我认为有两种方法可以做到这一点。我可以将 excel 文件中的所有超链接文本转换为相应的 URL,或者我可以使用 C# 以某种方式从单元格而不是文本中提取 URL 值。

我不知道如何做这两件事,但我们将不胜感激。

到目前为止的 C# 代码:

Excel.ApplicationClass excelApp = new Excel.ApplicationClass();

//excelApp.Visible = true;

Excel.Workbook excelWorkbook =
excelApp.Workbooks.Open("C:\\Users\\use\\Desktop\\list.xls",
0, false, 5, "", "",false, Excel.XlPlatform.xlWindows, "",
true, false, 0, true, false, false);

Excel.Sheets excelSheets = excelWorkbook.Worksheets;

string currentSheet = "Sheet1";
Excel.Worksheet xlws = (Excel.Worksheet)excelSheets.get_Item(currentSheet);

string myString = ((Excel.Range)xlws.Cells[2, 1]).Value.ToString();

至于 excel 文件,它只是一长串带有超链接的名称。例如单元格 A2 将包含文本:

Yummy cookie recipe

我想提取字符串:

http://allrecipes.com//Recipes/desserts/cookies/Main.aspx

最佳答案

您可以使用 vba 宏:

Alt+F11 打开 VBA 编辑器并粘贴以下内容:

Function URL(rg As Range) As String
Dim Hyper As Hyperlink
Set Hyper = rg.Hyperlinks.Item(1)
URL = Hyper.Address
End Function

然后您可以在工作表中使用它,如下所示:

=URL(B4)

关于c# - 从 Excel 单元格中的超链接文本中提取 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5646549/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com