■ 現在のこのページの役立ち度:
表示されない場合こちらのリンクからもご覧になれます。
■ このページの役立ち度を評価する:
役立ち度を評価してください。
(1(左):あまり役立たない - 5(右):大変役立った):
■ ページの共有:
[ サイト内検索 ]
カスタム検索
#15535-0配列の内容てっど2000-10-19(木) 13:08
     #15536-0RE#15535:配列の内容匿名155362000-10-19(木) 13:46
     #15537-0RE#15535:配列の内容よねKEN2000-10-19(木) 13:53
     #15553-0配列の内容てっど2000-10-19(木) 23:38
     #15554-0RE#15553:配列の内容よねKEN2000-10-20(金) 00:05
#15535-0
配列の内容
こんにちは。質問します。
配列をGene〜のDecla〜のところで
Dim x(9) As Double
と宣言しています。


x(0) = Val(siki)
Debug.Print x(0)
Text1.Text = ""
Debug.Print x(0)

For i = 9 To 0 Step -1
    Text1.Text = Text1.Text & x(i) & Chr(13) & Chr(10)
Next i


としてx(0)の内容をデバッグのウインドに書き出すと
 0.000000200270568 
 0 
と表示されます。
なぜか配列のx(0)の内容が消えてしまいます。
それ以外(x(1)〜x(9))は大丈夫なのです。
どこかだめなところがありますか?
#15536-0
RE#15535:配列の内容
> x(0)の内容をデバッグのウインドに書き出すと
>  0.000000200270568 
>  0 
> と表示されます。

0
0と表示されるのでは?

> なぜか配列のx(0)の内容が消えてしまいます。
> それ以外(x(1)〜x(9))は大丈夫なのです。

これってどういう意味でしょうか?
#15537-0
RE#15535:配列の内容
> x(0) = Val(siki)
sikiってなんですか?変数ですか。
どこでどういう風に宣言していますか。
また、どこでどんな値を代入していますか。

> Debug.Print x(0)
> Text1.Text = ""
> Debug.Print x(0)
> 
> For i = 9 To 0 Step -1
>     Text1.Text = Text1.Text & x(i) & Chr(13) & Chr(10)
> Next i
>  
> としてx(0)の内容をデバッグのウインドに書き出すと
>  0.000000200270568 
>  0 
> と表示されます。
確認ですが、これはこのコードを走らせた場合の
上に書いてある2行のDebug.Printに対応した出力結果ですか。

とりあえず
>配列をGene〜のDecla〜のところで
の一番上にOption Explicitを追加して変数の宣言を
確実にするようにしてみて下さい。何かわかるかもしれません。
#15553-0
配列の内容
> > x(0) = Val(siki)
> sikiってなんですか?変数ですか。
> どこでどういう風に宣言していますか。
宣言していません。
> また、どこでどんな値を代入していますか。
内容は文字列"0.000000200270568"です。

> 
> > Debug.Print x(0)
> > Text1.Text = ""
> > Debug.Print x(0)
> > 
> > For i = 9 To 0 Step -1
> >     Text1.Text = Text1.Text & x(i) & Chr(13) & Chr(10)
> > Next i
> >  
> > としてx(0)の内容をデバッグのウインドに書き出すと
> >  0.000000200270568 
> >  0 
> > と表示されます。
> 確認ですが、これはこのコードを走らせた場合の
> 上に書いてある2行のDebug.Printに対応した出力結果ですか。
そうです。

> > x(0)の内容をデバッグのウインドに書き出すと
> >  0.000000200270568 
> >  0 
> > と表示されます。
> 
> 0
> 0と表示されるのでは?
そうなんです。しかし表示されないので困ってます。
> 
> > なぜか配列のx(0)の内容が消えてしまいます。
> > それ以外(x(1)〜x(9))は大丈夫なのです。
> 
> これってどういう意味でしょうか?
x(1)〜x(9)の内容はちゃんと残ったままで以後も普通に参照できるということです。
x(0)のみが内容が消えてしまうのです。
こんなことは初めてです。
#15554-0
RE#15553:配列の内容
> > > x(0) = Val(siki)
> > sikiってなんですか?変数ですか。
> > どこでどういう風に宣言していますか。
> 宣言していません。
> > また、どこでどんな値を代入していますか。
> 内容は文字列"0.000000200270568"です。
   :
> > > としてx(0)の内容をデバッグのウインドに書き出すと
> > >  0.000000200270568 
> > >  0 
> > > と表示されます。
> > 確認ですが、これはこのコードを走らせた場合の
> > 上に書いてある2行のDebug.Printに対応した出力結果ですか。
> そうです。

であれば、
x(0) = Val(siki)
Debug.Print x(0)
Text1.Text = ""
Debug.Print x(0)

このコードで、その出力結果になることはあり得ません。
sikiに値を代入している部分がないので、両方0と表示されるはずです。

それ以前に、Text1をクリアする前と後で、同じ(と思われる)Debug.Print x(0)を
入れている理由がわかりません。

最初に提示されたコードがどのプロシージャ内に書かれたものか
知りませんが、それでそのプロシージャのすべてのコードですか?

とりあえず、先の回答でも書いた
>>配列をGene〜のDecla〜のところで
>の一番上にOption Explicitを追加して変数の宣言を
>確実にするようにしてみて下さい。何かわかるかもしれません。
をやってみましょう。変数を宣言せずに使うのはいらぬバグの
元ですから。
このページと関連する記事:
#16377-0PCによって何か設定とかあるんですか?2001-05-30(水) 11:31
#289-1ListBoxへの処理結果の書き出しで、負荷が大きく、うまくいきません2004-01-30(金) 01:23
#200-0小数点の計算1999-07-22(木) 08:44
#24528-0TextBox & Label を参照する2001-11-12(月) 16:12
#4672-0LOOPするためのコードについて1999-12-01(水) 05:24
#290-2文字列操作について2003-11-22(土) 20:43
#22227-0テキストボックスの使用について2001-08-07(火) 15:44
#21549-0質問2001-06-25(月) 14:14
#567-2バイナリファイル作成時、謎のデータが取れないのですが・・・。2001-10-26(金) 02:40
#30512-0Form上のText.box全てのText内容を変更するには2000-09-22(金) 19:39
お探しの情報は見つかりましたか?お困りの問題は解決しましたか?
サイト内検索, 似た記事検索で見つからなくてもあきらめずに掲示板で質問してみましょう。
VB初心者友の会があなたのお役に立てれば幸いです。また、本ページの投稿者の方々にこの場を借りて感謝致します。
本ページは過去ログを集めて自動構成しています。よろしければこのページに関するフィードバックをお願いします。
(※ 構成の誤り、広告等の不適切な記事、リンク切れ、読めないページの報告など)