tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルコレクションの配列
記事No11424
投稿日: 2008/02/13(Wed) 14:25
投稿者くまきち
コレクション1にデータがクラス定義でセットされています。
KeyはSeqでItemは配列で項目4つです。

※ウォッチするとこんな感じ
Item1
 @項目1:"1" 項目2:"1" 項目3:"0" 項目4:"A"
Item2
 A項目1:"1" 項目2:"2" 項目3:"0" 項目4:"B"  
Item3
 B項目1:"1" 項目2:"3" 項目3:"9" 項目4:"C"
Item4
 C項目1:"2" 項目2:"1" 項目3:"0" 項目4:"D"
Item5
 D項目1:"2" 項目2:"2" 項目3:"0" 項目4:"E"
Item6
 E項目1:"2" 項目2:"3" 項目3:"9" 項目4:"F"

「結果」

Item1
 項目1:"1" 項目2:"1" 項目3:"9"  項目4:"C"
Item2
 項目1:"1" 項目2:"2" 項目3:"0"  項目4:"A"
Item3
 項目1:"1" 項目2:"3" 項目3:"0"  項目4:"B"
Item4
 項目1:"2" 項目2:"1" 項目3:"9"  項目4:"F"
Item5
 項目1:"2" 項目2:"2" 項目3:"0"  項目4:"D"
Item6
 項目1:"2" 項目2:"3" 項目3:"0"  項目4:"E"

やりたい事は項目1と項目2のNOの付け替えです。
項目1の同じ値で項目3に"9"があった時、項目2に"1"をセットする
既にある項目2の"1"の値からカウントUPします。
例えば@〜Bは項目1が"1"なので"1"のグループになります。
その中のBの項目3が"9"なので、Bの項目2は"1"になります。
Bの項目2が"1"になりますが、@の項目2が"1"と既にあるため
@の項目2は"2"にカウントUPします。同じようにAの項目2は"3"にカウントUPします。
同じ考えでC〜Eも入れ替えます。
いいやり方を教えてください。

[ツリー表示へ]
タイトルRe: コレクションの配列
記事No11438
投稿日: 2008/02/15(Fri) 16:33
投稿者y4yama
> コレクション1にデータがクラス定義でセットされています。
> KeyはSeqでItemは配列で項目4つです。

> 項目1の同じ値で項目3に"9"があった時、項目2に"1"をセットする
これだけでいいですから、あなたの考えたコードをUPしてみて下さい
文章だけで、答えを得ようとするのは、回答者にはツライ・・です

[蛇足の疑問です]
> 既にある項目2の"1"の値からカウントUPします。
"1"のグループに既にある項目2の中で、最小値から使うと言うことですか
それとも、項目2は1から始まればいいのですか?

[ツリー表示へ]