snb,
The bold/not bold info is in column C, none of the data in column A appears to be bold, only a Y in column C designates that it is to be made bold in Word.
The line sp(j, 1) = Columns(1).Cells(1)(j).Font.Bold seems to be looking at cell A1 and down when the information is not there (it should start in A7 too).
There doesn't seem to be any excluding of data which doesn't have a Y in column B.
I tried doing more in-memory processing like you, but I don't know how to put only the filtered data into an array slickly, so this is just an attempt and doesn't address use of a word template, nor where in the word document to place the results:
Sub blah()
With ActiveSheet.Range("A6:C100")
  .AutoFilter Field:=2, Criteria1:="Y"
  .Resize(.Rows.Count - 1).Offset(1).SpecialCells(xlCellTypeVisible).Copy
  With Sheets.Add
    .Paste
    sss = .UsedRange
    Application.DisplayAlerts = False: .Delete: Application.DisplayAlerts = True
  End With
  .AutoFilter
End With
With CreateObject("Word.document")
  .Content = Join(Application.Transpose(Application.Index(sss, 0, 1)), vbCr)
  For j = 1 To UBound(sss)
    .Paragraphs(j).Range.Font.Bold = (sss(j, 3) = "Y")
  Next
  '.Content.ListFormat.ApplyListTemplateWithLevel ListGalleries(1).ListTemplates(1)'needs a ref to Word.
  .Content.ListFormat.ApplyBulletDefault
  .Parent.Visible = True
End With
End Sub