アプリ版:「スタンプのみでお礼する」機能のリリースについて

指定した行(連続データ)の一番右列の、その右横の空白セルを指定するマクロかVBAを教えていただけないでしょうか。

例えばA1~C1に連続したデータが入っているとしたらD1を、
A1~E1の時はF1などを調べたいのです。

連続データはC11までの場合もあれば、G1までのときなどもあり、様々で決まってはいません。
なにとぞよろしくお願いいたします。

A 回答 (4件)

一例です。


因みに1行目として、途中に未入力セルがあっても最右端の有効データの右隣セルとしています。
Cells(1, Cells(1, Columns.Count).End(xlToLeft).Column + 1)
    • good
    • 0
この回答へのお礼

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

お礼日時:2011/09/28 11:08

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



Cells(n, 1).End(xlToRight).Offset(, 1).Select
    • good
    • 1
この回答へのお礼

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

お礼日時:2011/09/28 10:48

データが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
    • good
    • 1
この回答へのお礼

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

お礼日時:2011/09/28 11:00

こういう質問をする前に、エクセルを相当知っておる人なら


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)マクロの記録を活用できてない。(初心者はもっとこの機能に頼れるか考えたほうが良い。使えない場合も多々あるが)
    • good
    • 0
この回答へのお礼

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

お礼日時:2011/09/28 11:03

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A