>コントロールが配列かどうかを知るには?入力中の回答があります。ページを離れますか?※ページを離れると、回答が消えてしまいますページを離れるA回答を続ける入力中のお礼があります。Basic6.0(SP5)で伺いたいことがあります。Each文で取得しています。Controlこのとき個々のControlがコントロール配列かどうかを知りたいのですが、どうすればよろしいでしょうか?フォーム上にはコントロール配列のオブジェクトも、コントロール配列ではないオブジェクトもあります。Control.Indexの値を参照しようとしても、コントロール配列でない場合は「配列ではないオブジェクトです」とエラーになります。IsArray関数でもFalseになってしまいます。何を行いたいかというと、そのControlがコントロール配列(Text1(0)とかText1(1)とか)かどうかを調べて、そのIndexをある関数の引数にしたいのです。全てコントロール配列だったら、Control.Indexで値を取得できるのですが。通報するこの質問への回答は締め切られました。19:25新しいアルゴリズムを思いつきました。コントロール配列って、たしか、同じ名前を共有しますよね。通報するこの回答へのお礼Masato_aさん、再度のご回答どうもありがとうございます。!全てのオブジェクトの数だけ配列を用意してカウントする方法ですね。Each文でオブジェクトを取得した場合、コントロール配列は必ずしも連続して取得できないので単純なコントロールブレイクではだめそうですが、全てのオブジェクトに対してカウントすれば確かによさそうですね。Errorでの処理を取るか、一つ一つ場合分けするかを検討します。ご回答ありがとうございました。22:58ANo.#1に>そうですね。Error文を使いたくないんですよ。コントロール配列だという印(しるし)をつけたらどうですかね。スマートかどうかは判断しかねますが簡明にはなります。エラー判定するべき箇所が終わったのでエラー処理ルーチンを無効にする意味で書きました。この後、どのような処理を書くかわかりませんので。エラー判定をずっと引きずりたくない意味です。書き方としては個人的な癖かもしれません。現プロシージャは終わってしまうので不要?でしょうか。通報するこの回答へのお礼nishi6さん、早々のレスポンスありがとうございます。実は最初tagに目印をつけようかと思ったのですが、既にtagは他の目的に使っていまして、桁を増やしたりしたくはないなと考えておりました。修正箇所が多くなりそうなので。あの・・・、「スマート」とは言葉が悪く、良識を疑われても仕様がない表現でした。謹んでお詫び申し上げます。Masato_aさんやnishi6さんの方法を悪く言うつもりはありませんでした。お気を悪くなさらないでください。使い方は存じませんでした。ありがとうございます。Controlで取得した場合、IsArray関数で配列とみなされないのは仕様なんですかね。再度のご回答どうもありがとうございました。myCtrl.Name>に入っています。0>とかはこんな使い方でした?年かな?だいぶ忘れてきました。通報するこの回答へのお礼nishi6さん、どうもご回答ありがとうございます。Error文で処理するのは最終手段にしようと思います。関数でもvbArrayは返しませんでした。0の行き先がわかりません。ご回答を賜りたく存じます。ご回答どうもありがとうございました。通報するこの回答へのお礼Masato_aさん、ご回答どうもありがとうございます。Error文を使いたくないんですよ。Errorで飛ばして、そこでErr.Numberで判断するのは、処理的には変わらないのですが、気の持ちようというか、他にスマートな方法がないかなーって思ってしまいます。Errorか、一つ一つ聞いていくかにすると思います。ご回答どうもありがとうございました。フォーム上の全てのコントロールを取得した7VB2010でのコントロール多次元配列について8マクロ初心者です。インデックスが有効範囲にありませんとエラーになりました。回答数ランキングです。・本当は知りたい、発毛体験のあれこれ。全クリア参照履歴を保存しない新規登録・ログインgooIDで新規登録・ログインログイン新規登録(無料)このカテゴリの人気Q&AランキングデイリーマンスリーNotepad起動のイベントでEXC...Excelの最終列までの転記についてExcelマクロで複数回検索する方法4Outlook2007の階層5テキストファイルの列を抜き出...6VBAでの処理7マクロについて。恋愛からビジネスまで人気の記事が一目で分かる今読むべき記事はコレ!貴社サイトにQ&Aを!QAコネクトとは・・?QA機能を導入できます利用料0円。Inc.質問して、直接聞いてみよう!Q質問する(無料)Q&A検索goo検索gooIDで新規登録・ログイン新規登録する(無料)会員の方はこちら外部サービスのアカウントで新規登録・ログインYahoo!で新規登録・ログインGoogleで新規登録・ログインTwitterで新規登録・ログインFacebookで新規登録・ログイン※各種外部サービスのアカウントをお持ちの方はこちらから簡単に登録できます。お客様の許可なしに外部サービスに投稿することはございませんのでご安心ください。会員でない方、会員になるとあなたも質問や回答ができるようになります!!親切・丁寧な回答が集まる場30分以内に回答がもらえ回答数は平均3件!匿名(ニックネーム)での投稿なので。