pickup

目次

Excelの内容をPDFで一発変換

こんにちは。伊川(@naonaoke)です。

今回は、Excelの内容をPDFに一発変換します。

このコードの内容は、実際に、私が業務で利用しているコードです。

本当に便利です。


スポンサーリンク

PDFをVBAで作成する意味

最近は、PDFで、顧客に提供することが多くなっています。

電子化が進んでいる証拠です。

また、PDFを編集するソフトや、PDFにそのまま書き込めるソフトも発売されています。

教科書も電子化されますので、PDFは本当に重要ですね。

今回のお題
  • VBAでPDFを自動作成
  • ファイル名も自動作成
  • 同一フォルダ内にPDFを保存

 

今回の必要な知識
  • PDFを作成するコード
  • ユーザーフォームを作成
  • Sheetを作成
  • Sheetを削除
  • 相対パス

今回はこの相対パスを、ぜひ、スキルにしてください。


このように、同一フォルダ内に作成されますので、ファイルを探す必要がありません。

Excelの内容をPDFに変換 作業手順 その1 ユーザーフォーム編



TextBox2が、Change(内容が変わったら)TextBox3に表示されるように設定しています。

私が実際に利用しているユーザーフォームには、年月日にカレンダーフォームを仕込んでいます。

そして、yyyy/mm/dd を、yyyymmddに変更されるようにしています。

できるだけ、ヒューマンエラーをなくするようにしています。

Excelの内容をPDFに変換 作業手順 その2 PDFに変換編

この画面を表示しないようにします。


Excelの内容をPDFに変換 作業手順 その3 相対パスの書き方

相対パスのメリット

同一フォルダ内であれば、フォルダ自体(この場合は、C:\Users\tekis\Desktop\No159)を、

パソコン内でどこに移動しても作動します。

例えば、実務であれば、急にネットワークディスクの名前が変更になったという事例がありました。

その日は、とてもパニックになりました。

但し、私は平気でした。

これは、その事を予想していたわけではなく、サンプルファイルを配布する際に、

このスキルが無ければ、ファイルの場所をユーザーに書き換えてもらわなければならないからです。

相対パスの指定の方法は、色々あります。

相対パスの例
  • ActiveWorkbook.Path & “\xxxx.accdb”
  • CurrentProject.Path & “\”
  • ThisWorkbook.Path & “\”

こんな相対パスの書き方があります。

 

Excelの内容をPDFに変換 作業手順 その4 PDF変換のコード

このコードはネットで探しました。

一応、逆引き辞典で、調べました。

逆引き辞典は、ネットのコードが正しいのか確認するときに利用するのが一番良いと思います。

Excelファイルと、PDFのファイルを作成します。

Excelの内容をPDFに変換 作業手順 その5 実際の利用


このファイルの利用方法です。

  • 20200616_001.xlsxは、ダブルチェック用に利用しています。
  • 20200616_001.pdfは、顧客に提出するものになります。

今回は、追加していませんが、PDF出力した瞬間に、操作しているExcelを自動で閉じるようにしています。

自動で閉じることによって、顧客情報の漏洩を防止するためです。

ここがポイント

ここがポイント
Function8.png
色々、アイテムを持っていることで、業務は楽になります。今回は、PDFでしたが、Excelの内容を、Word、メモ帳、PowerPointにも転送、起動できます。しかし、何でも自動にするのも考え物です。

最終的には、人間が確認することが一番です。

 

まとめ

最近は、コーヒーが飲みたくなったら、VBAで命令すると、買ってきてくれるのではないか?

なんて思います。

なんでも自動はいけませんが、もう、そのような時代になっています。

自動、つまり、AIと、人間が行う仕事は、バランスが必要なんですね。

今回のサンプルファイルは、No159です。

毎日の業務が、3時間短縮できます

わからない事を延々と考えるのは、無駄です。

  • なんで作動かないの?
  • もうやだ!VBAなんか嫌い!
  • ネットで調べても情報がない!

必ず作動するコードが、ここにあります。

スポンサーリンク

Twitterでフォローしよう

おすすめの記事