VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2006/12/15(Fri) 22:30
投稿者ヤマ@文系
Eメール
URL
タイトルRe^5: 配列について質問です。

なんだか返事のところぐちゃぐちゃになってすいません。m(_ _)m
テキストエディタで打っていたらミスが多くて
修正しようとおもったら返事になったりしてしまいました。

Redimで要素をデータ毎に再確保
splitを使う場合は、文字列なのでキャスト
(cintなどで数値へ)してやる必要があると思いました。
以下は2次元配列で処理した場合の例です。

Dim a() As Integer
Dim i As Integer
Dim intChk As Integer 'チェック用の一時保管
Dim kekka() As Integer
Dim num As Integer '結果用キーのナンバー

'データの要素の数を求める

'求めて、動的に宣言しなおす
ReDim a(6, 4) '例えばキー6 数5
ReDim kekka(6, 4) '結果 数5







'データに代入処理はここらへんでする。
'テスト用
a(0, 0) = 1
a(0, 1) = 2
a(0, 2) = 3

a(1, 0) = 1
a(1, 1) = 2
a(1, 2) = 3


Dim j As Integer

num = 1 '結果にも番号が必要なので最初は1



For intChk = 1 To 10 'チェックしたいキーデータの最大値
    For i = 0 To 2 - 1 'キーの数
        If a(i, 0) = intChk Then '要素をそれぞれ足す
           kekka(num, 0) = intChk 'キー
        For k = 1 To 4
            kekka(num, k) = kekka(num, k) + a(i, k)
         Next k
        End If
    Next i
    If kekka(num, 0) > 0 Then num = num + 1 '要素を足した場合番号インクリメント
Next intChk

(花ちゃんさますいません)


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -