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

投稿日: 2007/01/12(Fri) 14:18
投稿者tea
Eメール
URL
タイトルRe: 全ての行で比較したいなら

LESIAさん、花ちゃんさん、回答ありがとうございます。

> If frmMain.grdJournal.TextMatrix(Ro, 2) = "A" Then のように特定の列のデータと
> 比較しないと同じ答えになってしまいますよ。

花ちゃんさんが下記に示されたコードでよく理解できました。また、コードが簡潔で実行
速度も上がりました。と同時に自力の無さに悲しくなりました・・・。
本当にありがとうございます。

> すべての行のTeamChar のデータが入力されている列を検査したいかどちらなの
> ですか?

すべての行のTeamChar のデータです。

> 次回からコードを投稿される場合は、行毎に意図する事をコメントで記入して
> ください。
> コードが間違っているのか、仕様なのか判断できません(基本的な事で勘違いして
> おられると)

今後注意いたします。

> # 誤解されると困るので、全部のセルとはループで回して比較してしているセルの
>  事でループ以外は、黒になっているのでは。
> 全ての行に対して比較したいなら下記を試して見て下さい。

すいませんが、やはり最終行のみ黒色のままです・・・。
あともう少しで実現できそうなんです。
よろしくお願いします。

Dim Ro As Long, Co As Long
  'ジャーナルの色分け
    With frmMain.grdJournal
        .Visible = False
            '固定行を除いた行から最終行まで
            For Ro = .FixedRows To .Rows - .FixedRows
                '固定列を除いた列から最終列まで
                For Co = .FixedCols To .Cols - .FixedCols
                    .Row = Ro
                    .Col = Co
                    'もし、各行の2列目が"A"だった場合
                    If .TextMatrix(Ro, 2) = "A" Then
                        'その行のセルの色をすべて赤色に表示する。
                        .CellForeColor = vbRed
                    Else
                        'それ以外の行のセルの色をすべて青色に表示する。
                        .CellForeColor = vbBlue
                    End If
                Next Co
            Next Ro
            
      .Visible = True
      
    End With


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

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

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