投稿日 | : 2005/09/07(Wed) 10:04 |
投稿者 | : いち |
Eメール | : |
URL | : |
タイトル | : MSHFlexGridの複数行削除 |
こんにちわ、よろしくお願いします。
VB6.0 WinXP使用
MSHFlexGrid1とCommand1(削除ボタン)をつけ、選択した行(反転した部分)のみを削除したいと思って
いますがエラーが出ます。
@MSHFlexGrid1のクリックイベントに(HP参考にさせていただき)反転するようにしました。
With MSHFlexGrid1
If .CellBackColor = QBColor(1) Then
'再クリックした場合セル色を元に
.CellBackColor = QBColor(15)
.CellForeColor = QBColor(0)
Else
'セルに反転色を指定
.CellBackColor = QBColor(1)
.CellForeColor = QBColor(15)
End If
end with
ACommand1クリックイベント(削除ボタン)で
Do Until MSHFlexGrid1.Row = MSHFlexGrid1.Rows
If MSHFlexGrid1.CellBackColor = QBColor(1) Then
'反転していれば行削除
MSHFlexGrid1.RemoveItem i
i = i - 1
Else
MSHFlexGrid1.Row = MSHFlexGrid1.Row + 1
i = i + 1
End If
Loop
MSHFlexGridを1行ずつループして反転していれば削除というように作りましたがエラーの状態です。
ループの処理で、カレント行が総行数になればという処理にしましたが、ここで、どうしても最終行
のところでエラーになってしまいます。エラーの原因はわかるのですが、どう作って良いのかわから
なく困っています。よろしくお願いします。
この方法以外でもありましたら、お願いします。