- ベストアンサー
連続データが入った行の一番右端の右側の空白セル
指定した行(連続データ)の一番右列の、その右横の空白セルを指定するマクロかVBAを教えていただけないでしょうか。 例えばA1~C1に連続したデータが入っているとしたらD1を、 A1~E1の時はF1などを調べたいのです。 連続データはC11までの場合もあれば、G1までのときなどもあり、様々で決まってはいません。 なにとぞよろしくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
A列から右に連続したデータのn行目のデータ行の1つ右の空白セルを選択するなら、以下のようなコードで実行できます(nとSelectの部分を適宜変更してください)。 Cells(n, 1).End(xlToRight).Offset(, 1).Select
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
こういう質問をする前に、エクセルを相当知っておる人なら Z1とかを選択しておいて、ENDキーを押して、左矢印キーを押せば目的のことが出来る。 (A1,B1、C1が空白ではありえないときは、A1セルを選択して、ENDを押して、右矢印キーを押す手もある) これをマクロに記録を採ると(前者の方法) Sub Macro4() Range("Z1").Select Selection.End(xlToLeft).Select End Sub これは結果が、セル選択なので、列番号取得なら Sub test01() Range("Z1").Select Selection.End(xlToLeft).Select c = Selection.Column MsgBox c End Sub ーーー 言いたいことは (1)エクセルの操作の勉強が不十分(VBAはエクセルを使うものです。エクセルの機能を知らないと、十分使えません。 (2)マクロの記録を活用できてない。(初心者はもっとこの機能に頼れるか考えたほうが良い。使えない場合も多々あるが)
お礼
ありがとうございましたこれからもっと勉強したいと思います!
- keithin
- ベストアンサー率66% (5278/7941)
データがABC…列に埋まっていることをありきでご質問されている様子に見えますが,A列がさっそく空だった場合とか,A列は埋まってるけどいきなりB列で空になっているといった状況では,思うとおりにはいかないので注意が必要です。(いいかえると「運用で」AB列ぐらいはキチンと埋まっているという大前提を置いているのなら,あんまり気にしなくて良いということです) 簡単な作成例: sub macro1() dim i as long for i = 1 to range("IV1").end(xltoleft).column if cells(1, i)="" then cells(1, i+1).select end if next i end sub
お礼
今回以外でも活用できそうな事例をありがとうございました!
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 因みに1行目として、途中に未入力セルがあっても最右端の有効データの右隣セルとしています。 Cells(1, Cells(1, Columns.Count).End(xlToLeft).Column + 1)
お礼
このようなやりかたもあるのですね。もっと勉強します。ありがとうございました!
お礼
ありがとうございました!とても助かりました!!