システムから出てくるエクセルデータをメール定型文に完成させてしまう
ずぼら代表の私。
Excelから出したデータをコピペしてメールでご連絡する、というお仕事が面倒なのでマクロにしました。
準備
PERSONAL.XLSB を作成する
(開発タブはある前提です。表示がない方は検索をお願いします。。)
1.開発タブをクリック
2.マクロの記録をクリック
3.出てきたウィンドウ真ん中あたり、マクロの保存先を「個人用マクロ ブック」に変更
4.OK
5.記録終了
6.Visual Basicをクリック
7.プロジェクトエクスプローラーに「VBA Project(PERSONAL.XLSB)」があれば準備完了
Module1に準備した段階でのマクロ(中身なし)があるはずです。
それは削除してください。
マクロ
Sub テキストボックスにテンプレにデータを入れる()
Dim x As String
Dim y As Date
Dim Text As String
Dim TextboxMessage As String
x = Cells(●,✕).Value
y = Cells(●,△).Value
Text = "いつもお世話になっております" & vbCrLf & "○○○○をお送りいたします。" & vbCrLf & "xのタイトル:" & x & vbCrLf & "yのタイトル" & y
TextboxMessage = InputBox(prompt:="コピーしてメール貼り付けてください", Defalut:=Text, Title:="メールテンプレ")
End Sub
変数の数を増やしたり、取得する値のセルを指定したり、Forでループを組んだりアレンジはいろいろできると思います。
Dim 変数名 As データ型 で変数の宣言
Cells(行,列).Value で値取得
MSFormsライブラリのメンバである、DataObjectオブジェクトを使えば、セル値以外をクリップボード取得できるようですが、
いろいろと設定がめんどくさそう(ずぼら再び)なので、Ctrl+Cでコピー処理だけ手作業です。
0.5秒くらいなので、これならそこまで負担ではないかと思います。
マクロが設定・保存出来たら、ショートカットキーを設定しておくのが便利です。