So, the easiest would be to create custom objects, since that's what PowerShell actually deals best with.

$properties = @{ 'ColumnA' = 'ValueA'
'ColumnB' = 'ValueB' }

Those can then be piped to ConvertTo-HTML. However, that cmdlet doesn't support formatting. For fancy HTML formatting, read "Creating HTML Reports in PowerShell," right here on our lovely eBooks menu item. There's a good example about producing objects for the cmdlets to consume. Arrays are kind of "meh" in PowerShell.