こんにちは。
インストラクターのhosoyaです。
今回は、Excelのワークシートに入力されているデータを
VBAで取得・確認をする方法についてご紹介します。

データは上図のものを使用します。
A2セルには、「=A1」というA1セルを参照する数式が入力されており、
「セルの書式設定」の機能を使って、曜日の表示形式にしています。
ここから、A2セルのデータを取得していきます。
■データの取得
A2セル
のデータをVBAで取得するには、下記4通りの方法があります。
それぞれ「.(ドット)プロパティ名」の部分で、記述方法が変わっています。
(A)Range(”A2″) → 結果:40765
(B)Range(”A2″).Value → 結果:40765
(C)Range(”A2″).Formula → 結果:=A1
(D)Range(”A2″).Text → 結果:木曜日
(A)は(B)のValueプロパティを省略した形で、結果はどちらも「40765」になります。
これは一体、どんな数字なのでしょうか。
実はExcelでは、1900年1月1日を1とした数字で
全ての日付を認識しています。
今回の「40765」は、「1900年1月1日から数えて40765日目」という意味になります。
さて、次は(C)のFormulaプロパティの場合です。
Formulaプロパティは、セルに入力されている数式を取得します。
数式とは、下図の「数式バー」に表示されているデータになります。

最後に、(D)のTextプロパティです。
Textプロパティでは、実際にセルに表示されているデータを取得します。
セルには「木曜日」と表示されているので、見たままの通り、
「木曜日」というデータを取得することができます。
■データの確認方法
さて、データを受け取る場合には、ちゃんとデータが取得できているか、
取得したデータが希望通りのものか、という点がポイントになります。
そんな時、簡単にデータ確認ができる2つの方法をご紹介します!
★Msgbox Range(”A2″)
下図のような、メッセージボックスと呼ばれる小さなポップアップ画面に
受け取ったデータが表示されます。

★Debug.Print Range(”A2″)
こちらは、「イミディエイト ウィンドウ」という場所に、結果を表示させる方法です。イミディエイト ウィンドウは、「表示」メニューから表示・非表示の切り替えができます。
メッセージボックスは、実行の度に「OKボタン」をクリックしますが、
イミディエイト ウィンドウは、ただデータが表示されるだけなので、
確認後、そのまま編集を続行することができます。

以上がデータの取得・確認に関する記述方法になります。
プログラムでは、データの受け渡しは必要不可欠なものですので、
その都度、しっかり確認をしていきましょう!
パソコンスクールISA渋谷校/hosoya
こんにちは。
インストラクターのhosoyaです。
今回は、VBAを使ってExcel上で計算を行う
4つの方法について、合計を求める計算を例に、
ご紹介したいと思います。
|
A |
B |
| 1 |
|
点数 |
| 2 |
山田 |
75 |
| 3 |
佐藤 |
82 |
| 4 |
合計 |
|
まずは上図のような状態の時に、B4セルに合計を求めていきましょう。
VBAで計算を求めるには、大きく分けて4通りの方法があります。
■計算式を入力する場合
まずはB4セルに、合計を求める計算式を入力する方法です。
(A)Range(”B4″) = “=SUM(B2:B3)”
(B)Range(”B4″).Formula = “=SUM(B2:B3)”
正式には(A)で記述する必要がありますが、
(B)のような記述でも問題ありません。
上記の結果、B4セルには「=SUM(B2:B3)」という式が入力されます。
■計算結果を入力する場合
次に、VBA上で計算した結果のみを、B4セルに入力する方法です。
(A)Range(”B4″) = Range(”B2″) + Range(”B3″)
(B)Range(”B4″) = Application.WorksheetFunction.Sum(Range(”B2:B3″))
(A)はB2セルとB3セルの値を足して、B4セルに入力する記述です。
こちらはシンプルで分かりやすいと思います。
(B)でのポイントは、「Application.WorksheetFunction」です。
これは、普段はExcelで使用している関数を、VBAの中で使用する際に
宣言する記述です。
もしAVERAGE関数を使う場合には、
「Application.WorksheetFunction.Average(~)」となります。
上記の結果、B4セルには「157」という計算結果が入力されます。
計算式と計算結果のどちらを入力するのかは、場合によって変わりますが、
記述による実行結果の違いを、しっかり把握しておかないと
思わぬ結果を招くことがありますので、注意してください。
パソコンスクールISA渋谷校/hosoya
こんにちは。
今日はデフラグのお話です☆
みなさんは「デフラグ」ってご存知でしょうか?
私は数年前、パソコンを使用していたときに
PCの調子が悪く何を開くのにも、何かをするのにも
時間がかかったり、開かなかったりして困っていたところ
「デフラグをしてみたら?」といわれ、実行してみたら、復活!!しました。
古いパソコンだったので、完全復活とまではいわないですが、
以前より動きが早くなりました(>▽<)/
そこで、デフラグのメリットを調べたところ、、、
1. ハードディスクの適切な整理から、読み込み、書き込み速度の向上。
2. パソコン起動時の速度の向上。多くのプログラムの動作が快適になる。
3. ハードディスクの読み込み、書き込み時のエラー発生の低下。
4. ハードディスクの整理から、残り空き容量が増加する。
すごい機能だなぁと改めて思いますが、デフラグはハードディスクに
大きな負荷を与えますので、過度には行わず、パソコンの状況に
応じて行いましょう♪
ちなみに、やり方ですが「スタート」→「すべてのプログラム」→
「アクセサリ」→「システムツール」→「ディスク デフラグ」です。
試してみてくださいね(^▽^)/
パソコンスクールISA渋谷校/KIMURA
こんにちは。
なかなか天気がスッキリせず、蒸し暑い日が続いていますね。
今回は、覚えておけば明日から使える、
便利な「Excel VBA」のテクニックを
ご紹介していきたいと思います。(・▽・)ノ
VBAでは必須なプロシージャである
「Ifプロシージャ」を省略する書き方をご紹介したいと思います。
■■■Ifプロシージャの省略■■■
—
Sub Test1()
Dim i As Long
For i = 1 To 5
If i = 5 Then
MsgBox “終了!”
End If
Next i
End Sub
—
Test1プロシージャは、変数iが5になった時に、
メッセージを表示するというプロシージャです。
今回、条件を満たした時に行いたい動作は、
「MsgBox “終了!”」の1行のみとなります。
この場合、Ifプロシージャの部分はちょっと省略して
記述することができます☆
—
Sub Test1_1()
Dim i As Long
For i = 1 To 5
If i = 5 Then MsgBox “終了!”
Next i
End Sub
—
Test1_1プロシージャのように、Ifプロシージャの後の動作が
1行で記述できる場合に限り、End Ifなどを省略することができます。
■■■複数の条件をチェックする■■■
—
Sub Test2()
Dim i As Long, j As Long
For i = 1 To 5
If i = 5 Then
If j = 5 Then
MsgBox “終了!”
End If
End If
j = j + 1
Next i
End Sub
—
Test2プロシージャでは、「iが5になった時」と「jが5になった時」に
メッセージを表示させるプロシージャになっています。
やはり条件が2つにもなると、コードが長くなってしまいます・・・。
しかし、こちらも下記のように省略することができます!
—
Sub Test2_1()
Dim i As Long, j As Long
For i = 1 To 5
j = j + 1
If i = 5 And j = 5 Then MsgBox “終了!”
Next i
End Sub
—
ポイントはIfプロシージャの条件の中にある「And」です。
2つの条件を両方満たした場合のみ、処理が実行されるという仕組みです。
これを「Or」と変えて記述すれば、「どちらか一方を満たす場合」という
条件式に変化します。
いかがでしたでしょうか。
Ifプロシージャは、複雑なプログラムには頻繁に登場するプロシージャです。
たった数行の節約ですが、複雑なプログラムになるほど
この節約によって可読性が大きく変わってきます!(>_<)
プログラムをお作りの際には、ぜひお試しください!
パソコンスクールISA渋谷校/hosoya
こんにちは。インストラクターのhosoyaです。
今週からだんだん暖かくなるようですね。
春が近づくにつれて、今度は【花粉】の心配が出てきます(>_<。)
みなさんの中にも、花粉症にお悩みの方は多いのではないでしょうか?
私は実家が田舎の方だったので、学校の近くにはスギ林が広がっていました。
春になると、森の方から黄色い風が吹いてきます!
初めて見た時は衝撃の光景でした。(◎△◎;)
最近は色々な予防グッズや医薬品があるので、
授業に支障が出ないよう、厳重に注意します。
さて、今回でショートカットキー講座が涙の最終回です!
皆様からの熱いご支援をいただいて(いるつもりで)おりましたが、
(ネタが尽きてきたので)今回で終了となります。
今までお付き合いいただきまして、ありがとうございました。
★ファイルの名前を変更する ファイルを選択してF2キー
★ダイアログボックスを閉じる、操作をキャンセルする Escキー
★マウスドラッグでファイルをコピー Ctrlキーを押しながらファイルをドラッグ
★マウスドラッグでショートカットを作成 CtrlキーとShiftキーを押しながらファイルをドラッグ
★画面を最小化 Altキー+スペースキー+Nキー
★画面を最大化 Altキー+スペースキー+Xキー
★画面を元のサイズに戻す Altキー+スペースキー+Rキー
パソコンスクールISA渋谷校/Hosoya