Could you show serveral rows of expeted result?
You may use formula to convert it to table.
=CHOOSECOLS(WRAPROWS(C2:C3596,5),1,2,3,4)

Then paste formula as value and use macro to create same hyperlink based on name found in Column C.

Sub CreateHyperlinks()
Dim ws As Worksheet
Dim lastRowH As Long
Dim lastRowC As Long
Dim cellH As Range
Dim cellC As Range
Dim found As Range
' Set the worksheet
Set ws = ThisWorkbook.Sheets("European Parlament") ' Change "Sheet1" to your sheet name
' Find the last row in columns H and C
lastRowH = ws.Cells(ws.Rows.Count, "H").End(xlUp).Row
lastRowC = ws.Cells(ws.Rows.Count, "C").End(xlUp).Row
' Loop through each cell in column H
For Each cellH In ws.Range("H1:H" & lastRowH)
' Find the corresponding cell in column C
Set found = ws.Range("C1:C" & lastRowC).Find(What:=cellH.Value, LookIn:=xlValues, LookAt:=xlWhole)
' If found, create the hyperlink in column H
If Not found Is Nothing Then
ws.Hyperlinks.Add Anchor:=cellH, Address:=found.Hyperlinks(1).Address, TextToDisplay:=cellH.Value
End If
Next cellH
End Sub