お酒好きのおしりトラブル対策とは

いつもお世話になっています。

VBAで、「B列(曜日の列・カレンダーは自動作成されます)が”金曜”だったら、その隣のC列に”●●”と入力する」というプログラムを作りたいと思っています。

今のところ

'B列の曜日が金曜日だったらC列に●●をセットする

Set TargetRange = Range("B5:B35")

For Each B In TargetRange

If B.Value = "金" Then

Cells(C.Cell).Value = "●●"

End If

Next

となっていて、コンパイルは通るんですが実行されません。
番地を指定するのかな?とか予想はしているのですが・・・。
ヒントなどでも結構なので、ご教授ください。
お願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

>Cells(C.Cell).Value = "●●"



この意味がわかりませんが・・・。

Cells(B.Row ,"C").Value = "●●"

Cells(B.Row ,3).Value = "●●"
とか
B.Offset(0,1).Value = "●●"
とした方が良いのでは?
    • good
    • 0
この回答へのお礼

B.Offset(0, 1).Value = "●●"

で動きました!
ありがとうございました。

お礼日時:2008/02/04 16:16

>その隣のC列に”●●”と入力する


Cells(C.Cell).Value = "●●"
は間違いで
B.Offset(0,1).Value = "●●"
が正解
OffsetはB(Range)の座標から(行方向の移動値,列方向の移動値)ずれたセルを選択します。
    • good
    • 0
この回答へのお礼

B.Offset(0, 1).Value = "●●"

で動きました!
ありがとうございました。

お礼日時:2008/02/04 16:17

とりあえず、


Cells(C.Cell).Value = "●●"

B.Offset(, 1).Value = "●●"
に変えれば動きます。
    • good
    • 0
この回答へのお礼

B.Offset(0, 1).Value = "●●"

で動きました!
ありがとうございました。

お礼日時:2008/02/04 16:16

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


このカテゴリの人気Q&Aランキング