投稿者 るしぇ  (社会人) 投稿日時 2009/1/22 20:22:58
変数のスコープ(有効範囲)について覚えてみるのも良いかも。
[Visual Basic 中学校 > VB6 初級講座 > 第3回 変数を使う]
http://homepage1.nifty.com/rucio/main/shokyu/jugyou3.htm
> 5.適用範囲
[CavalierLab スコープ]
http://homepage1.nifty.com/CavalierLab/lab/vb/scope.html

X,Y はプロシージャ(関数) DrawCircle 内でのみ使えます。

以下、余談ですが、
> Private Sub DrawCircle(ByVal X As Integer, ByVal Y As Integer)
X,Y を CircleX, CircleY に変更しても正常に動きます。、
でも、この時の引数の CircleX, CircleY は
> Dim CircleX As Integer = 150
> Dim CircleY As Integer = 100
とは別のものが用意されます。つまりコードの意味としては X,Y 
を使ったときと同じです。

混乱するので、モジュールレベルの変数名とプロシージャレベルの
変数名は、かぶらないようにしましょう。