• ベストアンサー

EXCEL セルの1個下空白にアクティブを移動したい

ある列にデーターが入力されていて 最下端のデーター選択は Selection.End(xlDown).Select でいけますが、その1つ下の空白セルにアクティブを移動したいのですが、 どうすれば良いのでしょうか?

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

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

Selection.End(xlDown).Offset(1, 0).Select ではいかが

ICE_LACKY
質問者

お礼

ありがとうございました。上手くいきました

その他の回答 (2)

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

こんな、こともできます。 例データ) aaa bbb ccc s     <-- aaa dddd aa 2ブロックあり、1ブロックの最後のセルをとる。 Sub test01() Range("A65536").End(xlUp).End(xlUp).End(xlUp).Select End Sub その下は(<--の行) Sub test01() Range("A65536").End(xlUp).End(xlUp).End(xlUp).Offset(1, 0).Select End Sub

回答No.1

Selection.End(xlDown).Offset(1).Select のようにします。

ICE_LACKY
質問者

お礼

迅速回答ありがとうございました。

関連するQ&A

  • セルの選択

    エクセルで、マクロを作っています。 列の中に、数値がとびとびに入っている場合、数値の入っている最も下のセルはどのように選択すればいいのか教えてください。 Selection.End(xlDown).Select ↑では、空白になっているセルがあると、そこが選択されてしまうので、、、 お願いします。

  • エクセル VBAマクロ セルの単純移動

    基本的な質問ですが、よろしくお願いします。 エクセルのVBAで、Selectセルを1つだけ上下左右に移動させることを ”汎用的に書く”としたらどのようにすれば良いでしょうか? 例えば、Selectセルを一番上や、一番下、へというのであれば、 Selection.End(xlUp).Select Selection.End(xlDown).Select 一番右や、一番左なら、 Selection.End(xlToRight).Select Selection.End(xlToLeft).Select のように書いて、実行できます。 それでは、今いる所のすぐ隣りのセルへ移動させるということを 同じように表現するには、どのようにしたら良いでしょうか。 事の発端は、 マクロの自動記録を使って、セルを移動していっても、 Range("A1").Select Range("B1").Select Range("B2").Select Range("C2").Select Range("C3").Select : のように、絶対セル位置で記録されてしまうため、 同じような処理を順に隣りや後の行・列に向かって繰り返すような処理を 書こうとしたときに、汎用的には動いてくれないところからです。 参考になるページを自力では見つけられませんでした。よろしくお願いします。

  • 下4桁を比較し、小さい値のセルだけを赤色に塗りつぶすには?

    "C2:D2" から下へ、 「 連続したデータがあるセル 」 を選択してから、 C列 と D列 の  「 各値の下4桁だけ 」  を  行ごとに  比較し、 「 D列の値が 同じ か 小さいセルだけ 」 を 「 赤色に塗りつぶす 」 にはどのように記述すればよろしいでしょうか? 下記例の場合、  ”D2” と ”D4”  のセルだけが 「 赤色に塗りつぶす 」 ことになります。 どうか、ご教示くださいませ。 -------------------------- Range("C2:D2").Select Range(Selection, Selection.End(xlDown)).Select ・ ・ --------------------------      C列    D列   1    あ      い   2   た112222  1111  3   ち114444  5555  4   つ116666   6666 ・    ・       ・    ・    ・       ・  

  • VBAでセルの移動方法

     エクセルのVBAでセルが何処にあっても、その行の一番左端の列に移動するようにしたいのですが(行は変えずに列だけ)、どうすれば良いのでしょうか?  Selection.End(xlToLeft).Select と打ってみたのですが、一番左まで行かず、途中の空白行等で止まってしまう事があります。  どなたか教えて頂けませんか。

  • 空白セルをデータと認識してしまいます

    Excel2003を使用しています。 「マクロの記録」を使って、あるリストを自動作成 しようとしているのですが、うまくいきません。 A,B2つの列に分かれたデータを連結させるため、 C列に「CONCATENATE」関数を入れて適当な行まで コピーします。(それ以上はデータが入らないだろうと思われる100行目ぐらいまで) その後C列をコピーし、「値貼付け」をして 関数を値に変えます。 そうすると、たとえば実際には20行目までデータが 入っていたとすると、21行目~100行目までは 空白になりますよね? でも、どうもその空白行もデータとみなされている ようなんです…。 Range("C2").End(xlDown).Row で下端セルを探そうとすると、100行目に なってしまいますし、「ジャンプ」で空白セルを 探しても、同じ結果になります。 空白セルを選んで一度「Delete」を押すと 正しく「空白」と認識するようなのですが…。 「実際にデータの入っているセルとそうでないセル」 を自動で判別させたいので、 簡単に「何も入っていないセルを”空白”と正しく 認識させる方法」はありませんでしょうか?

  • エクセルVBAで空白セルを削除する方法

    みなさん教えてください。 今エクセルVBAで、下記のようにのA列に空白セルがある場合にそのセルを削除し、 空白セルが無い場合何もしないと言うマクロを作っています(下記のように自動記録し ました)。 しかし、作成したマクロは、下記のようにA列に空白セルがない場合はエラーが出てし まいます。 空白セルが無い場合エラーが出ない方法を教えて頂けないでしょうか。 よろしくお願いします。 <マクロ> Sub Macro1() Columns("A:A").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Selection.SpecialCells(xlCellTypeBlanks).Select Application.CutCopyMode = False Selection.Delete Shift:=xlUp End Sub <データ> A --------- 1 2 1 1 1 3 4 ・ ・ ・ (以降約300行続きます)

  • セルの移動(マクロ)

    今晩は! お世話になります。 エクセルで多量データ(500行以上)あります。 本来ならば、データ量が多い場合、アクセスを使用した方が良いのかもしれませんが、データを元にグラフ作成等行う為、エクセル使用しています。  そこで、500行以上の次行に入力する際、スクロールするのは面倒なので、ボタン一つで入力する先頭行に移行するマクロを作成したいのですが、まだ自分でプログラムを作成するのは難しく、本などで同じ目的のマクロを見つけ、移している程度です。 今回、同じ目的のマクロが見つからず、ショートカットキーで行うやり方の必ず漏れがなく入力される列(No.「A列」)にセルを選択し、”Ctrl+↓”で入力済みの最後尾に移動。その後”Enter"で次行、入力するセルに移るという事で、この行動を”マクロの記録”をしてみました。 マクロの記録 ~(A4「No.1」)のセルを選択 ~ ”Ctrl+↓” ~ ”Enter"   の順です。 例にA4=No.1でA4~A6(No.1~No.3)まで記入しました。  標準モジュールの内容は・・・ Sub セルの移動() ’ ’セルの移動Macro ’マクロ記録日 : XXXX / X / XX ユーザー名:XXXXXXX ’ ’Keyboard  Shortcut:Ctrl+t ’   Range("A4").Select   Selection.End(xlDown).Select   Range("A7").Select End Sub ・・・と記入されています。 ですが、これでは Range("A7").Select と”A7”と指定されている為、 A7以降の行が入力されていても A7 に移行してしまいます。  これをA列のNo.(連番)が記入されている次行(連番が未記入の先頭行)に移動させるにはどこをどう修正すれば良いのでしょうか? お手数お掛けしますが、上記希望内容に相応しいプログラムのを教えて頂けると助かります。 初心者の為、宜しくお願いします。

  • VBA 表の1つ下のセルを選択する

    EXCEL2003のVBAを使っています。 オートフィルタで抽出させた表があります。 入力されているセルの、1つ下のセルを選択するにはどうしたら良いでしょうか。     A 1  あああ  2  あああ  5  あああ  1行目から19行目までの列の中で、"あああ"だけをオートフィルタで抽出している 10  あああ  14  あああ   16  あああ  20   ※ ←ここを選択したい。 Range("A65536").Select Selection.End(xlUp).Select ActiveCell.Offset(1, 0).Select これだとA17のセルが選択されてしまいます。 表全体の1つ下のセルを選択する方法はあるでしょうか?

  • Excel 空白セルのコピペについて

    http://imgur.com/5e8TsP1 上記図のように、シート1のB列に各文字を入力しています。 そして、A列にはもしB列に文字が入力されていたらID代わりの数値を表示する、という式を入力してあります。 次に、シート1のA列、B列をコピーして、シート2に数値としてペーストをします。 すると、A列は空白のはずが、xldown操作をすると元のセルで式が入力されていたものまで選んでしまい、真の空白セルとして認識してくれません。 そこで、このような例の場合、どうコピーペースト、または選択をすれば偽物の空白 セルを生み出さないように出来るでしょうか? 実際に使用するデータは項目名が多く存在し、マクロですべてのセルを選択→新規ブックを作成してそこにペースト、という処理を行っています。 この時に偽物の空白セルが出ると、データベースに読みこむ際に不都合が生じますので、何とか改善を図りたいです。 VBA、関数、Excel上のテクニックのいずれでも構いませんので、どうかご教授下さい。 よろしくお願いいたします。

  • コンボボックスの値を参照する

    こちらVBA初心者です。宜しくお願い致します。 A:Aを"出身地"、 B:Bを"データ"という名前で定義しており、 D1~D3を"選択"という名前で定義しています。 入力内容はこうです。 D1・・・空白 D2・・・出身地 D3・・・データ そしてA列とB列の最初にある空白セルを見つける為に、 Range("出身地").Select Selection.End(xlDown).Offset(1, 0).Select もしくは、 Range("データ").Select Selection.End(xlDown).Offset(1, 0).Select で可能だと言う事がわかりました。 そして、それをユーザーフォームでコンボボックス内のRowSouceに選択と入力して、 コンボボックスでどちらかを選び、ボタンを押して実行。と、したいのですがここから先がうまくいきません。 VBAに関するサイトは多く、様々な場所で勉強させていただきましたがどうにも理解出来ませんでした。 どうか、お助け下さい。

専門家に質問してみよう