Here you go.
I set it up so you can use Control + q to run the macro. 
Sub willhh3()
Dim rngFound As Range, strFirst As String, rngData As Range, r As Range, c As Long, y As Long, z As String
With Worksheets("Visits").ListObjects("Table1").ListColumns(2).DataBodyRange
Set rngFound = .Find(What:="# Assigned Bldg Visited", LookAt:=xlWhole, SearchDirection:=xlNext, After:=.Cells(.Rows.Count), MatchCase:=False)
If Not rngFound Is Nothing Then
Application.ScreenUpdating = False
strFirst = rngFound.Address
Worksheets("Visits").ListObjects("Table1").ListRows.Add (rngFound.Row)
Else
MsgBox "No matches found for # Assigned Bldg Visited"
Exit Sub
End If
Do
Set rngFound = .FindNext(rngFound)
If Not rngFound Is Nothing And strFirst <> rngFound.Address Then
Worksheets("Visits").ListObjects("Table1").ListRows.Add (rngFound.Row)
Else
Exit Do
End If
Loop
End With
Set rngFound = Worksheets("Visits").ListObjects("Table1").DataBodyRange.SpecialCells(xlCellTypeConstants)
For Each r In rngFound.Areas
r(r.Rows.Count + 1, 1).Value = r(1).Value
With r(r.Rows.Count + 1, 2)
.Value = "% Assigned Bldg Visited": .Font.Color = 192
.Font.Bold = True: .Font.Italic = True
End With
For c = 3 To r.Columns.Count
y = r(r.Rows.Count, c).Value
z = r(1).Value
With r(r.Rows.Count + 1, c)
.Formula = "=" & y & "/VLOOKUP(" & Chr(34) & z & Chr(34) & ",Assigned!A:B,2)"
.Value = .Value
.NumberFormat = "0%"
End With
Next c
Next r
Application.ScreenUpdating = True
End Sub
Bookmarks