開発環境:
Windows10 Pro
Visual Studio Community 2019
開発言語:
VB.NET FrameWork4.7.2

帳票出力をエクセルに出力しているアプリが結構あります。
ライセンス上の問題もあり推奨はしていません。
出来ればLibreOfficeへの変更をお願いしていますが、
なかなか移行していただけません。
アプリの修正費用もそこそこ掛かりますので・・・。

この間,Windows Update「20H2」やテレワークの関係で、「エクセルが起動できない!」とか「エクセルが開かない!」とかで、お声がかかります。
たいがいは、そもそもエクセルが入っていないとか、エクセルのアクティベートをしていないとかが多いのですが、壊れていてVB.NETのアプリから呼んだ時に、「ActiveX コンポーネントを作成できません。」エラーとなる場合があります。
エクセルの再インストールやアクティベイトをする必要がありますが、ユーザさんの領域なので、そこには手出しできません。
対応としては、出力先をエクセルからCSV出力に変更するようにしました。 CSVだと何かしら読めるものがPCには入っていると思いますので。

メインの処理(VB)

If Not fncURI_XLS() Then
    'エクセル作成処理に失敗したので、
    'CSVを作成する。
    If fncURI_CSV() Then
        ProgressBar1.Value = 3
        Exit Sub
    End If
    Throw New Exception("処理は不正終了します。")
End If

エクセル作成処理(VB)

Public Function fncURI_XLS() As Boolean
    Dim xlApp As Object
    Dim xlBook As Object
    Dim XLSHEET As Object
    Try
        xlApp = CreateObject("Excel.Application")
        xlBook = xlApp.Workbooks.Add
        XLSHEET = xlBook.Worksheets(1)
        ''~処理
        Return True
    Catch ex As Exception
        Return False
    Finally
        XLSHEET = Nothing
        xlBook = Nothing
        xlApp = Nothing
    End Try
End Function

CSV作成処理(VB)

Public Function fncURI_CSV() As Boolean
    Try
        '保存先
        Dim csvPath As String = "..\売上リスト.csv"
        'エンコード指定
        Dim enc As System.Text.Encoding = _
            System.Text.Encoding.GetEncoding("Shift_JIS")
        ''~処理
        ’メッセージ
        MessageBox.Show("エクセルが使用不能です。" & vbCrLf & "CSVを出力しました。", My.Application.Info.Title)
        'CSVを開く
        Using p As System.Diagnostics.Process = _
            System.Diagnostics.Process.Start(csvPath)
        End Using
        Return True
    Catch ex As Exception
        Throw ex
    End Try
End Function

これでエクセルが使用できなかった場合は、CSVの出力するようになります。
複数シートを使わないのであれば、CSVでも不便さを感じることはありません。

インストールされているエクセルの不具合があって、.NETからエクセルが操作できないけれど、Excel自体は普通に使える。
或いはExcel以外のxlsxファイルが読めるプログラムがインストールされている場合は、ClosedXMLを使用するのがよさそうです。
下記リンクを参考にしてください。
xlsx形式のファイルの出力