• ベストアンサー

連続データが入った行の一番右端の右側の空白セル

指定した行(連続データ)の一番右列の、その右横の空白セルを指定するマクロかVBAを教えていただけないでしょうか。 例えばA1~C1に連続したデータが入っているとしたらD1を、 A1~E1の時はF1などを調べたいのです。 連続データはC11までの場合もあれば、G1までのときなどもあり、様々で決まってはいません。 なにとぞよろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

A列から右に連続したデータのn行目のデータ行の1つ右の空白セルを選択するなら、以下のようなコードで実行できます(nとSelectの部分を適宜変更してください)。 Cells(n, 1).End(xlToRight).Offset(, 1).Select

kopangoo
質問者

お礼

ありがとうございました!とても助かりました!!

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

こういう質問をする前に、エクセルを相当知っておる人なら 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)マクロの記録を活用できてない。(初心者はもっとこの機能に頼れるか考えたほうが良い。使えない場合も多々あるが)

kopangoo
質問者

お礼

ありがとうございましたこれからもっと勉強したいと思います!

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

データが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

kopangoo
質問者

お礼

今回以外でも活用できそうな事例をありがとうございました!

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

一例です。 因みに1行目として、途中に未入力セルがあっても最右端の有効データの右隣セルとしています。 Cells(1, Cells(1, Columns.Count).End(xlToLeft).Column + 1)

kopangoo
質問者

お礼

このようなやりかたもあるのですね。もっと勉強します。ありがとうございました!

関連するQ&A