After you .Add the sheet, your "I" loop variable still points to the last one, not the one you just added
Try one of these
Sub AddSheets()
Dim i As Long
With ThisWorkbook
For i = 1 To 3
Worksheets.Add after:=Worksheets(Worksheets.Count)
Sheets(i + 1).Name = Worksheets("Business Structure").Cells(i, 17).Value
Next i
End With
End Sub
Sub AddSheets()
Dim i As Long
With ThisWorkbook
For i = 1 To 3
Worksheets.Add after:=Worksheets(Worksheets.Count)
Sheets(Worksheets.Count).Name = Worksheets("Business Structure").Cells(i, 17).Value
Next i
End With
End Sub