辛辣だなぁw CopyFromRecordSetで貼ったやつの方だけ1箇所違うんだよ
1行、1カラムずつ貼った方は正しい 元データももちろん正しい

lobjが対象テーブルのListObject dbrsがADODBで引いたRecordSet

データが違うパターン
lobj.InsertRowRange.CopyFromRecordset dbrs

正しいパターン
rc = 1
Do Until dbrs.EOF
  For co = 1 To lobj.ListColumns.Count
    lobj.ListRows(rc).Range(co).Value = dbrs.Fields(co - 1).Value
  Next
  rc = rc + 1
  dbrs.MoveNext
Loop

これでどう検証したらいいのよ