HappyTech's VBA Page
http://www.max.hi-ho.ne.jp/happy/
Illustration by M.Fukumoto HappyTech & Y.Nagai
© 1999 - 2010
All Rights Reserved.
Home
すぐマク
 
作りながら覚える

作りながら覚える! EcxelVBAマクロ 組み方講座  ・  修正内容
 Part1 Lesson 04 P.065下側 カコミ (赤字が修正カ所 … 以下同じです。)
  コード
  消費税を請求合計から逆算する
    消費税 = WorksheetFunction.Round(請求合計 / 105 * 5 , 0)
  @   A B             C   D     E F GH I
 
@この変数へ A代入する Bワークシート関数の
CRoundで次の()内の指定による数値を指定された桁数で四捨五入して Dこの変数の値
E÷ F105 G× H5 I桁数
  *桁数に0を指定した場合   …… 最も近い整数として四捨五入される
  *桁数に正の数を指定した場合 … 小数点の右側(小数点以下)で四捨五入されて小数点以下の桁数
      が桁数に等しくなる
  *桁数に負の数を指定した場合 … 小数点の左側(整数部分)の指定した桁(1の位を0とする)に四捨
  五入される

※ これに関連する修正カ所 … すべて「請求書.xls」のModule1です。
  ・ P.074 … Part1 Lesson 04 … 【図4-14】 下から5行目
・ P.158 … Part1 Lesson 09 … 【図9-3】 上から4行目
・ P.174 … Part1 Lesson 10 … 【図10-5】 下から11行目
・ P.175 …      〃     … 【図10-5の続き】 下から12行目
・ P.177 …      〃     … 【図10-7】 上から5行目
・ P.181 …      〃     … 【図10-10】 上から5行目
・ P.186 … Part2 2-1 … 【図1-2】 上から5行目
・ P.268 … 付録 F1  … 上から3行目

 Part2 2-3  P.194中ほど
  消費税の計算式と編集方法を改良する
 
内税方式での消費税
    修正前 … 消費税 = WorksheetFunction.Round(請求合計 / 105 * 5 , 0)
修正後 … 消費税 = WorksheetFunction.Round(請求合計 / (1 + 消費税率) * 消費税率 , 0)
 
外税方式での消費税
    消費税 = WorksheetFunction.Round(請求合計 * 消費税率 , 0)

※ これに関連する修正カ所 … 「請求書.xls」のModule1です。
  ・ P.195 … Part2 2-3 … 【図3-3・修正前】 上から5行目
・ P.195 …   〃   … 【図3-3・修正後】 上から6行目と8行目

 Part2 2-3 P.196中ほど
  わかりやすいPart 1.のコードで例示
  四捨五入 … 消費税 = WorksheetFunction.Round(請求合計 / 105 * 5, 0)
切り捨て … 消費税 = WorksheetFunction.RoundDown(請求合計 / 105 * 5,0)
切り上げ … 消費税 = WorksheetFunction.RoundUp(請求合計 / 105 * 5,0)
  用語
  Round関数 (ワークシート関数)
  機能:   数値を指定された桁数で四捨五入する
書式:   WorksheetFunction.Round(数値,桁数)
引数:
・数値   四捨五入の対象となる数値を指定する
・桁数   65ページ参照

 修正しなかった場合の影響
  外税で5%の場合だけ
  ・税抜き金額に百円未満の端数が付いていない場合は影響ありません。
・税抜き金額の百円の位が偶数で百円未満が10・50・90円の場合と、
          百円の位が奇数で百円未満が30・70円の場合に限って
          消費税が1円少なくなってしまいます。        

お手数をおかけしますが、よろしく修正の程お願いします。  .