達人養成塾 小川です。
今回は「Excelマクロ・VBA基礎コース、発展コース」を10月に受講された、広島県の岡崎年彦さんからのメールをご紹介。
岡崎さんは金融機関で債権回収、経営支援・指導のバックスタッフのお仕事をされています。
10月6日~7日に達人養成塾の基礎コース、発展コースを受講されて、
以下は、その2日あと、10月9日にいただいたメール。
さて、今日はまだ若葉マークの私が、仕事に使ったマクロを添削頂きたくメールしました。
実行はうまくできたのでとりあえずはOKだと思うのでうすが、
冗長的な内容になっているかもと思い、添削希望します。
50,000件の処理ともなるとさすがにアッという間ではありませんでしたが、
それでも30秒程度で終了。
エクセルマクロの威力を思い知る1日でした。
それでは、どうぞよろしくお願いします。
はじめて自分の仕事でイチからマクロを書けたときの喜びって、大きいですよね。
ちなみに、その最初のマクロは、以下のようなもの。
(設定条件)
50,000件の顧客データから
①セルEWの値が20120930より少なく(つまり2012年9月30日より前)、
②セルGの値が24
の時、セルC,G,EWのフォントを赤くする。それ以外は黒くする。
(使用目的)
50,000件のデータから、カードローン有効期限が2012年9月30日以前の顧客に対し、
必要な事務処理を行うため、該当顧客の抽出が必要となった。
Option Explicit
Sub tyusyutu()
Dim mituketa
mituketa = Range(“EW2”).Value
For mituketa = 2 To 50001
If Range(“EW” & mituketa).Value < 20120930 And Range("G" & mituketa).Value = 24 Then
Range("G" & mituketa).Font.Color = vbRed
Range("C" & mituketa).Font.Color = vbRed
Range("EW" & mituketa).Font.Color = vbRed
Else
Range("G" & mituketa).Font.Color = vbBlack
Range("C" & mituketa).Font.Color = vbBlack
Range("EW" & mituketa).Font.Color = vbBlack
End If
Next
End Sub[/vb]
最初に書くマクロはこんな10行くらいのものかもしれませんが、それでも、大きな改善につながるものです。
なにせ、マクロを使えるようになるまでは手つかずだった案件がゴロゴロと転がっているものなので ヾ(´ー`)ノ
ここで紹介されているマクロについて、一点だけ
vbBlack
は、「色を黒にする」という意味です。
「フォルトの色にする」というのは、微妙にニュアンスが異なります。
エクセルの通常の設定だと、デフォルトの色は黒。
なので、色を黒にしたとき、デフォルトの色と同じになった、というだけです。
デフォルトの色にしたい場合は、
.Font.Color = vbBlack
ではなく、
.Font.ColorIndex = 0
を使ってください。自分で自動記録しながら文字に色をつけ、さらにそのあと「自動」を選択してみると分かります。
セルの背景色をデフォルトにするには、
.Interior.ColorIndex = xlNone
です。