あなたの習慣について教えてください!!

エクセル2002使用です。

VBAでセルに連番が入力された複数のセルに不連続となったセル番地をとりたいのですが・・・・
 
     A B C D E F
1行目  1 2 3 4 8 12
2行目  4 5 7 8 9 5 

左端から必ず右方向へ連続した番号が、入力されますが、途中でその連続性が途絶えます。
1行目の場合はE1セル、2行目はF2セルです。このE1セルやF2セルのセル番地を見つけ出せるようにしたいのですが・・・ 数字は1から始まるとは限りません。

IFステートメントで「不連続ならば・・・」とすればいいと思うのですが、「不連続ならば・・・」の部分で困っています。

よろしくお願いします。

A 回答 (2件)

こんにちは。

maruru01です。

条件を、「1つ前のセルの値+1と等しくなければ」とすればいいのでは?


For i = 2 To 10
  If Cells(1, i).Value <> Cells(1, i - 1).Value + 1 Then
    MsgBox Cells(1, i).Address
    Exit For
  End If
Next i


という感じ

ところで、2行目はC2では?
(6が飛んでいる)
    • good
    • 0
この回答へのお礼

maruru01様早速のお返事ありがとうございます。
アドバイスいただいた方法でやります。

頭が固くなってしまってました。

ありがとうございました。今後ともよろしくお願いします。

お礼日時:2004/09/15 10:43

A,B列には適用できませんがC列以降なら


C1で「書式」「条件付き書式」で
「数式が」「=AND((B1-A1<>C1-B1),AND(A1<>0,B1<>0,B1/A1<>C1/B1))」
で書式を設定
参考の例だとE1,C2,D2,F2の書式が変わります。

B1-A1<>C1-B1で同じ数値の加算・減算をチェック
B1/A1<>C1/B1で同じ数値の乗算・除算をチェック

実際には等比加算等があるのでもっと増やす必要があるのですが
とりあえず....
    • good
    • 0
この回答へのお礼

mshr1962 様早速のお返事ありがとうございます。

なるほど等比例ですか。。。
実は、使用する目的は、賃金台帳で、連続した数字は毎月の給与、不連続は賞与の分で、どうしてもその給与と賞与の間を見つけださねばならないのでした。

#1様と組合わせて使わせていただきます。

ホントにありがとうございました。
今後ともよろしくお願いします。

お礼日時:2004/09/15 10:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!