VBAでお尋ねしたく思います。 Selection.Range(Cells(1,1),Cells(1,5)).Interior.ColorIndex=6 で、Range(Cells(1,1),Cells(1,5))の部分が1行目5列分という意味になっていますが、

VBAでお尋ねしたく思います。 Selection.Range(Cells(1,1),Cells(1,5)).Interior.ColorIndex=6 で、Range(Cells(1,1),Cells(1,5))の部分が1行目5列分という意味になっていますが、 1行目1列と1行目5列というように離れたセルを選択する場合を教えていただけませんでしょうか。 Range("B3,C5")の場合がB3とC5を返すという意味になるんですが。 まだ初心者です。ご教授お願いできませんでしょうか。

補足

kabukunmanさん、rivoisuさんありがとうございます。Cellsをつかって離れたところを選択したいのですが、 B6から始まっている表で、 Range("B6").select ActiveCell.CurrentRegion.Select Selection.Interuor.ColorIndex=20 に続いて上記のコードが続きます。B6とF6に黄色を入れたいのですが、ご教授いただいたのですとうまくいきません。 Selection.Unionにするとエラーでした。 質問の仕方がうまくなく申し訳ありません。

Visual Basic346閲覧

ベストアンサー

0

そういう時は Union(Cells(1, 1), Cells(1, 5)).Interior.ColorIndex = 6 とします。 *-----------------------------* >Selection.Unionにするとエラーでした。 そういう書き方はできません Union(Cells(1, 1), Cells(1, 5)).Select selection..Interior.ColorIndex = 6 という風に書きます。 ただし離れた範囲をつないだ範囲をSelectした場合にSelectionは連続した範囲と違う動きをする場合がありますので注意が必要です。

ThanksImg質問者からのお礼コメント

rivoisuさんありがとうございました。本当は相対的に選択できるとよいのと思ったのです。範囲選択したセル範囲の1行1列めと1行5列目のセルという具合にできないかなあと思ったのです。。。的確なご教授ありがとうございました。

お礼日時:2011/8/20 15:27

その他の回答(2件)

0

これでどうかしら? Range("A:A,E:E").Select ・・・① ん? 1行目1列 と 1行目5列 を選択? (-_-; 上のやり方だと A列 と E列 全部を選択しちゃうんだけどね 1行目って入ってるってことは・・・ 1行目1列 = セルA1 1行目5列 = セルE1 ・・・ってことか? それなら・・・ Range("A1,E1").Select ・・・② これでOKなんだけど・・・ 違うかな? まぁ、質問内容には後者②の書き方しとるんで、前者①のことを聞いてるのかもしれんなぁ~ ちなみに! ボクも、この質問を見るまで前者のやり方(コードの書き方)は知らんでした なんで知ったかというと・・・ 新しいマクロの記録(R)... ← この機能を利用して、コードの知ったのだ 特に、ちょっとしたことのコーディングを知りたければ、ネットで調べるよりも一番簡単な方法なのだな! けっこう有効なのだな (^_^) [つけたし] あ・・・ Cellsを使いたいってわけだったのか んで、rivoisuさんのやり方だとエラーとなるって話だけど・・・ 素直に Union(Cells(6, 2), Cells(6, 6)).Select ってすれば選択されるはずだよ 頭の Selection. ← これあっからエラーになっちゃうんじゃないのかな? もし他シート上の複数の範囲のセルを扱いたいってんなら・・・ ’***2枚目のシートをアクティブ*** Worksheets(2).Activate ’***アクティブなシートのCells(6, 2) と Cells(6, 6)を選択&塗り潰し(黄色)*** With Union(Cells(6, 2), Cells(6, 6)) ____.Select ____.Interior.ColorIndex = 6 End With ・・・ってな感じになるんかな? んであと・・・ Selection.Interuor.ColorIndex=20 でなくって Selection.Interior.ColorIndex = 20 だね (^_^; 重箱の隅をつつくみたいで、ナンですが・・・ 念のため!