Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


51484 / 76738 ←次へ | 前へ→

【30119】Re:構造体配列の初期化
発言  ichinose  - 05/10/19(水) 23:07 -

引用なし
パスワード
   ▼おぐら さん:
こんばんは。

>初書き込みで質問で恐縮ですがまわりに聞ける人がいないので教えて下さい。
>
>クイズ1問ごとのデータ(問題、回答、正当時のメッセージ等)の構造体を定義し、その配列を作成したのですが効率の良い初期化方法が解りません。
>現状では初期化関数の中で「table(1).mondai = "・・・"」等としていますが、下記の点で納得いきません。
>
>1.変更しないテーブルであるにもかかわらず、実行時に初期化している。
 残念ながら、変数定義時に初期値を指定できる変数という概念がありません。


>2.要素毎に要素番号を記述する必要がある。

  配列ですからねえ
  
>3.要素毎にメンバ名を記述する必要がある。
  構造体(VBAでは、ユーザー定義型)ですからねえ
>
>うまい初期化方法があれば教えて下さい。
>理想はこんな感じです。これを関数の外に書きたいです。
>下記に近い書き方があればうれしいです。
>table1 = ( ( "問題内容1" , "回答1" , "Msg1") , _
>      ( "問題内容2" , "回答2" , "Msg2") )

ということで↑これは、厳しいかな・・・。


>補足:
>・問題の内容をユーザ見せしたくないので、ワークシートには書きたくないです。

シートを非表示(シートのVisibleプロパテイを2に設定)すれば、
ユーザー操作で表示は出来ません。
よって、シートに

問題内容1 回答1  Msg1
問題内容2 回答2  Msg2
問題内容3 回答3  Msg3
問題内容4 回答4  Msg4
問題内容5 回答5  Msg5
問題内容6 回答6  Msg6

等と事前に設定しておくとよいと思いますが、いかがですか?

0 hits

【30117】構造体配列の初期化 おぐら 05/10/19(水) 22:14 質問
【30119】Re:構造体配列の初期化 ichinose 05/10/19(水) 23:07 発言
【30120】Re:構造体配列の初期化 おぐら 05/10/19(水) 23:23 お礼
【30125】Re:構造体配列の初期化 Jaka 05/10/20(木) 9:43 発言
【30155】Re:構造体配列の初期化 bykin 05/10/20(木) 19:14 発言
【30162】Re:構造体配列の初期化 micnak 05/10/21(金) 5:17 発言
【30460】Re:構造体配列の初期化 おぐら 05/10/27(木) 22:27 お礼

51484 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free