Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8550 / 13644 ツリー ←次へ | 前へ→

【32623】VBAのRounddownについて carerra 05/12/19(月) 21:46 質問[未読]
【32624】Re:VBAのRounddownについて Kein 05/12/19(月) 22:06 発言[未読]
【32625】Re:VBAのRounddownについて carerra 05/12/19(月) 22:44 お礼[未読]
【32626】Re:VBAのRounddownについて carerra 05/12/19(月) 23:18 お礼[未読]

【32623】VBAのRounddownについて
質問  carerra  - 05/12/19(月) 21:46 -

引用なし
パスワード
    こんばんわ。いつも参考にさせていただいてます。2回目の投稿なのですが、またご教授いただけたらと思います。

 ユーザーフォームにテキストボックス及び、リストボックス、また、マルチページを配置しています。
またマルチページの中にテキストボックス、リストボックスを配置しております。これらの選択した値及び、入力した数値をボタンをクリックすると入力できる。また呼び出したりするプログラムを作っています。

 そして、長くなったのですがここからが標記のRounddownについてなのですが、

マルチページに配置したテキストボックスが・・・
工事設計金額     ←税込みの金額です
工事設計金額消費税
工事請負金額     ←同じく税込みの金額です。
工事請負金額消費税
第1回変更設計金額   ←同じく税込みの金額です。
第1回変更請負金額   ←同じく税込み金額です。

で、最後の第1回変更請負金額なのですが、第1回変更設計金額を入力すると自動計算されるように数式を組んであります。以下のようにRounddownを入れ込むとコンパイルエラー修正候補ステートメントの最後というようなエラーが出てまいります。
数式の中のsheets("基礎データ").Range("V3")は消費税率の0.05が入ります。それに1をプラスして税抜き及び税込みを計算するようにしています。

Private Sub 第1変更設計金額_Change()
    If (第1変更設計金額.Value = ClearContents) Then
    '何もしない
  ElseIf IsNumeric(第1変更設計金額.Value) = True Then
    第1変更設計金額.Value = Format(第1変更設計金額.Value, "#,##0")
  Else
    第1変更設計金額.Value = ClearContents
  End If
'変更金額自動計算
  If IsNumeric(第1変更設計金額.Value) Then
    第1変更請負金額.Value = "=Rounddown(((請負金額.Value - 請負金額消費税.Value) / (設計金額.Value - 設計金額消費税.Value)) * (第1変更設計金額.Value / (Sheets("基礎データ").Range("V3") + 1)),-3) * (Sheets("基礎データ").Range("V3") + 1)
  Else
    第1変更請負金額.Value = ClearContents
  End If
End Sub

 長々と、また、わかりにくい内容かもしれませんが、ご教授いただければと思います。併せて、質問をする立場でありながら、30分程所要で席をはずします。大変勝手ではありますが、よろしくお願いします。

【32624】Re:VBAのRounddownについて
発言  Kein  - 05/12/19(月) 22:06 -

引用なし
パスワード
   VBAの関数でなく、WorksheetFunction.RoundDown というワークシート関数を
VBAコード内で使うやり方は、試してみましたか ?
つまり、どれぐらい試行錯誤してから質問しているのか ? という事が聞きたい
わけですが・・。

【32625】Re:VBAのRounddownについて
お礼  carerra  - 05/12/19(月) 22:44 -

引用なし
パスワード
   ▼Kein さん:
>VBAの関数でなく、WorksheetFunction.RoundDown というワークシート関数を
>VBAコード内で使うやり方は、試してみましたか ?
>つまり、どれぐらい試行錯誤してから質問しているのか ? という事が聞きたい
>わけですが・・。

 お返事ありがとうございます。言い訳っぽくなっているのでが・・・
WorksheetFunction.RoundDownというワークシート関数なのですが、試しておりません。
VBAの本を数冊買っているのですが、これには記載されておらず、VBAヘルプでただ単に RoundDown 等でしか検索しておらず、はじめて知りました。
新たに Kein さんにご指摘いただいたWorksheetFunctionでVBAヘルプを見ると説明が載っていました。お恥ずかしい質門をしてしまい、大変失礼しました。
 まだ、ざっとしか確認していませんが、ヘルプを見て自分で考えて作ってみます。
 お騒がせして失礼いたしました。それでは失礼します。

【32626】Re:VBAのRounddownについて
お礼  carerra  - 05/12/19(月) 23:18 -

引用なし
パスワード
   keinさんどうもありがとうございました。
WorksheetsFunction.RoundDownで思い通りにできました。
答えがわかれば質問した自分が恥ずかしい限りです。
WorksheetFunctionを教えていただきありがとうござました。
また、これからもつまらないことで質問することがあるかもしれませんが、よろしくお願いいたします。
ありがとうございました。それでは、失礼いたします。

8550 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free