C# is not an option :crying:
Here is a mockup of some code for a Script Task that reads a Worksheet row-by-row and accesses the Hyperlinks collection for each row. I am no Excel expert and this only took me about 15 minutes to mock up. I am sure it could be easily extended to suit your needs:
[font="Courier New"]using Microsoft.Office.Interop.Excel;
//...
public void Main()
{
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
excelApp.Visible = true;
Workbook workbook = excelApp.Workbooks.Open(@"C:\@\Book1.xlsx",
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing);
// The key line:
Worksheet worksheet = (Worksheet)workbook.Worksheets["Sheet1"];
foreach(Range range in worksheet.Rows)
{
foreach (Hyperlink hyperlink in range.Hyperlinks)
{
string hl = hyperlink.Address;
}
}
Dts.TaskResult = (int)ScriptResults.Success;
}
[/font]
There are no special teachers of virtue, because virtue is taught by the whole community.
--Plato