My Web道

WEB制作科 受講記録 …とその後も続くWEB制作に関する活動・学習記録です。

ファイルの更新状況を管理したい時に役立つサンプルマクロ

f:id:sntkk3:20170820002346j:plain

ファイルの更新状況を管理したい時に役立つExcel用マクロ

日々ファイルを作成・更新していると、フォルダ内のファイル更新日時を一覧化したいって思うことが度々あります。

が、Windowsエクスプローラー標準機能には、残念ながらそのような機能はありません。
(ファイルのパス一覧を取得する「パスのコピー」機能はあるのだから、このような機能も実装されてても良い気がしますが。。。)

そこで、
特別なツールなどを使わず、
「特定フォルダ内のファイル名、更新日時を取得・一覧化」する方法を調べました。

その結果、見つけたのが今回以下記事でご紹介いただいているサンプルマクロによる方法です。
www.relief.jp


すぐに作ってみたところ、
見事思った通りの一覧を出力してくれて重宝しています。


ということで、
以下より、その作成手順をご紹介いたします。

Excel VBA】指定フォルダ内のファイル名と更新日時の一覧を作成する VBA

サイトを構成する複数ファイルの更新状況を把握、管理するのに役立つサンプルマクロです。

【作成手順】
1. Excelを起動します。

2. 「開発」タブ-「マクロ」 をクリックします。
 ※「開発」タブは標準では表示されていません。
  「開発」タブが表示されていない状態の方は、以下を参考に「開発」タブを表示してください。

 [開発] タブを表示する - Office サポート


3. 「Visual Basic」をクリックします。
 ⇒ Visual Basic エディタが表示されます。

4. VBAプロジェクトで「ThisWorkbook」をダブルクリックします。
 f:id:sntkk3:20170819191528p:plain

⇒ コードウィンドウが表示されます。

5. コードウィンドウに下記コードをコピー・貼り付けします。
 f:id:sntkk3:20170819195150p:plain

6. VBエディタのメニューより実行(Sub/ユーザーフォームの実行)してみます。

7. ファイル選択画面が表示されたら、適当なフォルダを選択します。

8. 実行結果として、ファイル一覧が正しく作成されることを確認します。

9. 無事確認ができれば、VBエディタのメニューより「ファイル」-「終了してMicrosoft Excelへ戻る」をクリックし、VBエディタ画面を閉じます。


《サンプルマクロ》
ソースは以下の通り

Sub FileUpdateList()
 Dim fld As FileDialog
 Dim fol_path As String ' フォルダーのフルパス
 Dim f_name As String ' ファイル名
 Dim i As Long

 Set fld = Application.FileDialog(msoFileDialogFolderPicker)
 If fld.Show = 0 Then Exit Sub 'キャンセル時

 fol_path = fld.SelectedItems(1) 'フォルダのフルパスを変数に格納
 f_name = Dir(fol_path & "\*") '指定されたフォルダの一つ目のファイル名を取得
 If f_name = "" Then MsgBox "ファイルが存在しません。": Exit Sub
 Worksheets.Add Before:=Sheets(1)
 Range("A1").Value = fol_path
 Range("A2").Value = "のファイル一覧"
 Range("A4").Value = "ファイル名"
 Range("B4").Value = "最終更新日時"
 ChDir fol_path & "\" 'カレントフォルダの変更
 i = 5
 Do Until f_name = ""
  Cells(i, "A").Value = f_name
  Cells(i, "B").Value = FileDateTime(f_name)
  i = i + 1
  f_name = Dir '次のファイル名を取得
 Loop
 MsgBox Sheets(1).Name & "に一覧を作成しました。"
End Sub


【マクロ実行手順】
以下、作成したマクロの実行手順です。

1. 本マクロを実装したExcelファイルを開きます。

2. 「開発」タブ-「マクロ」 をクリックします。

3. 「マクロ」ウィンドウで先程のマクロが選択されている状態で「実行」ボタンをクリックします。
f:id:sntkk3:20170819194346p:plain


4. ファイル選択画面が表示されたら、適当なフォルダを選択します。

該当フォルダ内のファイル一覧が作成されたら完了です。


Google AnalyticsをWordPressサイトに設置する ~All in One SEO (プラグイン)編~

f:id:sntkk3:20170805172309p:plain

All in One SEO (プラグイン) で設置する場合

[準備]
1. All in One SEOがインストールされていない場合には、まずインストール、有効化します。

All in One SEO Pack — WordPress プラグイン :
https://ja.wordpress.org/plugins/all-in-one-seo-packja.wordpress.org

2. 自身のサイトで予め Analyticsのトラッキングコードを確認しておきます。

 < 確認方法 >
 (1) Analyticsサイトにログイン後、「管理」>「トラッキング情報」>「トラッキングコード」をクリックします。
 (2)「トラッキングコード」の画面の「トラッキングID」を確認します。


All in One SEO Pack — WordPress プラグイン


1. All in One SEOの「一般設定」をクリックします。
f:id:sntkk3:20170805165913p:plain


2. 表示された画面で「Google Settings」セクションまでスクロール移動します。


3. 下図の赤枠内箇所(※以下、3.1. 及び 3.2.参照)を設定します。


3.1. Google Analytics IDの値にUA-から続く自身のトラッキングコードを入力します。

3.2. Advanced Analytics Optionsを「有効」に設定します。

f:id:sntkk3:20170805164206p:plain


4. [設定を更新]ボタンで設定を更新します。


設定は以上となります。

Gmail でリマインド(同報)メールを送信する

f:id:sntkk3:20170729234232p:plain


5月13日 以下記事の続編です。
times-diary.hatenablog.com


Yet Another Mail Merge(Chrome 拡張)で、リマインドメール送信

Google Chrome 拡張機能の「Yet Another Mail Merge」を利用すると、Googleメールから一斉同報メールを簡単に送信することができます。
※送信できるのは、一日100件までという上限はあります。


【必要なもの】
1. Chrome ブラウザ
2. Gmailアカウント
3. Gmail
4. Googleスプレッドシート


【準備】
1. Chromeを起動します。

2. Chromeウエブストアで「Yet Another Mail Merge」を検索、インストールします。
chrome.google.com


3. Googleスプレッドシートの参加者リストを開きます。

4. 新規シートを作成し、シート1列目がメールアドレスになるように参加者リストを加工しておきます。
 ( 上記を一斉同報メール送信用に使用します)

5. Gmailで一斉同報メール(今回は参加者リマインドメール用)の件名、本文を作成し、下書き保存しておきます。



【手順】

1. 前述の【準備】で作成したGoogleスプレッドシートの参加者リストを開きます。
 ※あるいは、新規シートで以下手順を進め、手順3後で新規シートに参加者リストをコピー・貼付けしてもOKです。


2. メニューの「アドオン」-「Yet Another Mail Merge」-「メールマージを開始」を選択します。

f:id:sntkk3:20170723195738p:plain


3. 連絡先を設定します

 ※今回は、セミナー参加者リストにあるメールアドレスに送信するため、「Add emails myself」をクリックします。

f:id:sntkk3:20170723195816p:plain


4. 参加者リストの準備

(1) 手順1 で参加者リストから進めている場合には、現在のシートをそのまま使用します。

(2) 手順1 で新規シートから進めている場合には、既存参加者リストのデータを現在のシートにコピー・貼付けします。
この時、シート1列目をメールアドレスになるようにします。

f:id:sntkk3:20170723195841p:plain


5. 現在のシートに参加者データが準備できたら再び、メニューの「アドオン」-「Yet Another Mail Merge」-「メールマージを開始」を選択します。

f:id:sntkk3:20170723195900p:plain


6. 以下ダイアログ画面で「Continue」をクリックします。

f:id:sntkk3:20170723200006p:plain


7. 「送信者名」を設定、「下書き」に対象として作成したメールを選択します。
f:id:sntkk3:20170729221530p:plain


※「Track emails opend,clicked or bounced」のチェックは必須ではありませんが、チェックしておくと送信したメールの開封状況が確認できて便利です。


8. リマインドメール送信実行

(1) 初回は、「テストメールを送信」を実行し、正しくリマインドメールが送信されるか確認します。

(2) 上記(1)テストメール送信確認後、「メール送信」を実行します。

f:id:sntkk3:20170723200049p:plain


9. リマインドメール送信用参加者リストに状況が反映されます。

f:id:sntkk3:20170723200106p:plain