第4回.セルの値を使って計算する(四則演算)
エクセルは表計算ソフトです。
マクロVBAでも、何はともあれ計算出来なければなりません、
エクセルではセルに入っている数値を使って計算します。
マクロVBAでも同様にセルに入っている数値を使って計算できます。
A1セルとB1セルの数値で、四則演算してみます。
セルの値を使って足し算
Enter
TAB
cells(2,3)=cells(2,1)+cells(2,2)
Enter
では入力カーソルが、
Sub 練習5 ~ End Sub の間にある状態で実行F5
110
と表示されました。
Range("C2") = Range("A2") + Range("B2")
しかし、この場合のセル位置は移動する可能性が高そうですね、
こういう場合は、最初からCellsで書きましょう。
計算式の書き方は、シートでの計算式と同じなので、簡単ですね。
セルの値を使って四則演算
足し算の下の行から、
Enter
cells(2, 5)=cells(2, 1)*cells(2, 2)
Enter
cells(2, 6)=cells(2, 1)/cells(2, 2)
Enter
- 引き算
* 掛け算
/ 割り算
セルの値を使った応用計算
以下の計算をしてみましょう。
そして、税抜き小計に消費税(1.08)を掛けて税込み合計を求めます。
Enter
TAB
cells(2,4)=cells(2,1)*(cells(2,2)+cells(2,3))
Enter
cells(2,5)=cells(2,4)*1.08
Enter
小学校で習いましたが、
掛け算と割り算を先に計算して、その後に足し算と引き算を行います。
エクセルは、これを忠実に守っていますので、
今回の場合は、足し算を先に行う必要があるので括弧()で囲んでいます。
110×(5+7)
Cellsで書くとちょっと混乱しますが、このように書けばわかるはずです。
それぞれの数値をCellsに置き換えれば完成します。
これは、シートでの計算と同じです。
ワークシートの関数を使った計算
四捨五入か切り捨てか、1円未満の端数処理が必要です。
=ROUND(D2*1.08,0)
四捨五入なら、このように書くでしょう。
切り捨てなら、INT関数を使うかもしれません。
何にしろ、関数が必要なんです。
マクロVBAでも同様に関数が必要です。
Cells(2, 5) = WorksheetFunction.Round(Cells(2, 4) * 1.08, 0)
このように書きます。
関数についての詳細は、後々に説明します。
今は、シートで使う関数を書くときは、
WorksheetFunction.関数名(引数・・・)
このように書くものだと覚えてください。
ExcelマクロVBA入門の対応ページ
第87回.WorksheetFunction(ワークシート関数を使う)
同じテーマ「マクロVBA再入門」の記事
第5回.同じ計算を行数分繰り返す(For~Next)
新着記事NEW ・・・新着記事一覧を見る
TRIMRANGE関数(セル範囲をトリム:端の空白セルを除外)|エクセル入門(2024-08-30)
正規表現関数(REGEXTEST,REGEXREPLACE,REGEXEXTRACT)|エクセル入門(2024-07-02)
エクセルが起動しない、Excelが立ち上がらない|エクセル雑感(2024-04-11)
ブール型(Boolean)のis変数・フラグについて|VBA技術解説(2024-04-05)
テキストの内容によって図形を削除する|VBA技術解説(2024-04-02)
ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.RangeとCellsの使い方|VBA入門
6.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
7.セルのクリア(Clear,ClearContents)|VBA入門
8.メッセージボックス(MsgBox関数)|VBA入門
9.条件分岐(Select Case)|VBA入門
10.マクロとは?VBAとは?VBAでできること|VBA入門
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。