• ベストアンサー

VBA言語プログラミング

添付画像の問題での質問です。ong型の変数Nを宣言し、Nの値をinputbox関数で入力すると、(N,sum())および(N,sum2())を表示するSubプロシージャのプログラムが分かりません。 言語はエクセルのビジュアルベーシックです。

質問者が選んだベストアンサー

  • ベストアンサー
  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.1

これでいかがでしょうか Sub sample1()  Dim ToTal As Long  Dim n As Long  Dim i As Long    n = InputBox("Nを入力")  ToTal = 0    For i = 1 To n   ToTal = ToTal + i * (i + 1) / 2  Next i    MsgBox "(" & Format(n, "0") & "," & Format(ToTal, "0") & ")" End Sub Sub sample2()  Dim ToTal As Long  Dim n As Long  Dim i As Long    n = InputBox("Nを入力")  ToTal = 0    For i = 1 To n   ToTal = ToTal + (i * (i + 1) * (2 * i + 1)) / 6  Next i    MsgBox "(" & Format(n, "0") & "," & Format(ToTal, "0") & ")" End Sub

tgadgwp
質問者

補足

この度は回答していただきありがとうございます。上記の記述を入力してみたのですが、MsgBox "(" & Format(n, "0") & "," & Format(ToTal, "0") & ")" の部分でコンパイルエラー(修正候補: =)が出てしまいます。何か改善策があれば教えて頂けますでしょうか?宜しくお願いします。

その他の回答 (1)

  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.2

>MsgBox "(" & Format(n, "0") & "," & Format(ToTal, "0") & ")" >の部分でコンパイルエラー(修正候補: =)が出てしまいます。 当方では、指摘のエラーを再現できません。 (エラーなく動作します。) プロシジャーを2つ掲示していますが、 一方ですか?、双方共ですか? また、inputboxで値を埋めるわけですが、 この画面すら表示されませんか? それとも表示され、何かを入力してOKボタン押下後にエラーが起きますか? その場合に埋めている値は? さらに、エラーメッセージを正確に説明してください。 更にさらに、当方が掲示したコードをそのまま 標準モジュールにコピペし、実行してみてください。

tgadgwp
質問者

補足

お忙しいところありがとうございます。もう一度入力し直してみたところエラーなく実行することができました。文字と文字の間に空白がなかったのが原因だったようです。この度はありがとうございました。また機会があれば宜しくお願い致します。失礼致します。

関連するQ&A