クリスタルレポートをエクスポート


VB TIPS AND SAMLPE CrystalReportの基本

エクスポート・出力

クリスタルレポートで、PDF等に出力・エクスポートできます。
方法は簡単で、エクスポートボタンを押すだけです。
ただし、サブレポート+エクセルなどはそのまま出力されるわけではないようで、
多少レイアウトが崩れるようです。
エクスポート
エクスポートタイプ

いろいろ試してみましたが、xlsxはインストールされていない環境でも作成されましたので(オープンオフィスは入っている)
たぶんエクセルクリエイター的に、エクセルがインストールされていなくてもエクスポートは可能のようです。

次回は、コードで書くとどう書くか?ですかね・・・・
というわけで、以下がソース。
出典は「https://msdn.microsoft.com/ja-jp/library/aa288404%28v=vs.71%29.aspx」です。 一部
「' エクスポート形式を設定します。
exportOpts.ExportFormatType = ExportFormatType.Excel」
は削除しています。上で既に指定しているので不要だと思うのですが?

Private Sub export()

        ''複数の形式、ファイル名を自分で選択してエクスポート可能
        'CrystalReportViewer1.ExportReport()

        ' 変数を宣言し、エクスポート オプションを取得します。
        Dim exportOpts As New ExportOptions()
        Dim diskOpts As New DiskFileDestinationOptions()
        Dim excelFormatOpts As New ExcelFormatOptions()

        Dim rpt As New CrystalReport1
        rpt.SetDataSource(dt) '取って置いたデータテーブル
        exportOpts = rpt.ExportOptions

        ' Excel 形式のオプションを設定します。
        excelFormatOpts.ExcelTabHasColumnHeadings = True

        exportOpts.ExportFormatType = ExportFormatType.Excel
        exportOpts.FormatOptions = excelFormatOpts

        exportOpts.ExportDestinationType = ExportDestinationType.DiskFile

        ' ディスク ファイルのオプションを設定します。
        diskOpts.DiskFileName = "クリレポ.xls"
        exportOpts.DestinationOptions = diskOpts

        rpt.Export()
    End Sub