第3講 For文を学ぼう

第10話 等差数列を求める和を求めるマクロ例
入力欄に入力してから実行ボタンを押すと、
m
消去ボタンを押すと、
u
* ただし、C6、E6、G6に何も入力していないでうっかり実行ボタンを押すと、
  始まりと終わりの指定がないので、永久に計算してしまいます。
  うっかり押したときは、Escを押して
 q終了ボタンを押してください。

を実現するするプログラム例

Private Sub CommandButton1_Click()
   
  Dim a As Integer, M As Integer, n As Integer, d As Integer, i As Integer
  M = Cells(6, 3)
  n = Cells(6, 5)
  d = Cells(6, 7)
  a = 0
  For i = M To n Step d
    a = a + i
  Next
  Cells(7, 5) = a
    
End Sub

Private Sub CommandButton2_Click()
  
  Cells(6, 3).Select
  Selection.ClearContents
  Cells(6, 5).Select
  Selection.ClearContents
  Cells(6, 7).Select
  Selection.ClearContents
  Cells(7, 5).Select
  Selection.ClearContents
  Cells(1, 1).Select
  
End Sub

参考ダウンロード添付ファイル


皆さん、このマクロをさらに改善して、
2013(2の2乗+7の2乗+12の2乗+・・・+32の2乗)
入門(2の3乗+7の3乗+12の3乗+・・・+32の3乗)
初心者(2の4乗+7の4乗+12の4乗+・・・+32の4乗)
のような計算も出来るようにして下さい。
ただし、変数はすべて
im a As Long, M As Long, n As Long, d As Long, i As Long
と長整数型として宣言して下さい。
値が大きくなりIntegerの範囲をあっと今に超えてしまうからです。
IntegerとLongの範囲は、それぞれ
-2147483648 〜 2147483647と
-9223372036854775808 〜 9223372036854775807
になります。
長整数型にしても
o
末項を大きくすると4乗の和辺りでは、
オーバ−フロー(限界値を超えてしまうこと)しますので、
末項は小さめに入れて下さい。
オーバーフローした場合は、
h
終了ボタンを押してください。
いくつぐらいでオーバーフローするのかは、
皆さんが実験されて確認して下さい。



第9話へ 第11話へ

004


eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門
数独のシンプルな解き方・簡単な解法の研究
vc++講義へ
excel 2013 2010 2007 vba入門へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
専門用語なしの C言語 C++ 入門(Visual C++ 2010で学ぶ C言語 C++ 入門)
専門用語なしの excel vba マクロ 入門 2013 2010 2007 対応講義 第1部
eclipse java 入門へ
excel 2016 vba 入門へ第2部へ
小学生からエンジニアまでのRuby入門へ
小学生からエンジニアまでのC言語入門 基礎から応用まで
本サイトトップへ