Excel VBA質問箱 IV

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

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


1157 / 76734 ←次へ | 前へ→

【81232】Re:キー値と属性の組の集合を良い感じに変数にしたい
回答  hatena  - 20/3/17(火) 20:11 -

引用なし
パスワード
   TypeがCollectionに格納出来たらいいのですが、TypeはCollectionに格納できないという制限があります。

代わりにクラスを使えばどうでしょうか。
クラスモジュールを新規作成して、名前を Chara とします。
下記のコードを記述します。

Option Explicit

Public Name As String
Public HP As Long
Public Attack As Long
Public Defence As Long
Public Skill As String


---
使用例

Public Sub test()
  Dim colChara As Collection
  Set colChara = New Collection
    
  Dim C As Chara
  Set C = New Chara
  With C
    .Name = "ガイ"
    .HP = 200
    .Attack = 90
    .Defence = 50
    .Skill = "兜割り"
  End With
  colChara.Add C, "ガイ"
  
  Set C = New Chara
  With C
    .Name = "トム"
    .HP = 300
    .Attack = 30
    .Defence = 90
    .Skill = "鉄壁の守り"
  End With
  colChara.Add C, "トム"
  
  Debug.Print colChara("ガイ").HP
  Debug.Print colChara("トム").Defence

End Sub


クラスではパブリック変数を宣言してますが、プロパティを使ったりメソッドを追加したりするとより使いやすくできます。

7 hits

【81182】キー値と属性の組の集合を良い感じに変数にしたい りった 20/2/29(土) 10:07 質問[未読]
【81184】Re:キー値と属性の組の集合を良い感じに変... マナ 20/3/1(日) 9:07 発言[未読]
【81231】Re:キー値と属性の組の集合を良い感じに変... りった 20/3/14(土) 13:58 お礼[未読]
【81232】Re:キー値と属性の組の集合を良い感じに変... hatena 20/3/17(火) 20:11 回答[未読]
【81233】Re:キー値と属性の組の集合を良い感じに変... hatena 20/3/17(火) 21:20 回答[未読]

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