• 締切済み

データベースの最下行に移動するVBAがわからない

データベースの最下行にデータを入力すべく、マクロを実行すると データベースの先頭のセルが選択された状態で実行されますが 入力後にその入力を終えた最下行の先頭のセルが選択されるように マクロを実行したいのですがどうすればわかりません。 エクセル2010にてVBAで作成しています。 どのようなコードを入力すればできるでしょうか?

みんなの回答

  • FEX2053
  • ベストアンサー率37% (7987/21354)
回答No.2

もそっと、VBAというか、Excelの操作に近い方法で言えば、 Selection.End(xlDown).Offset(1).Select って感じですかね。選択位置から[Ctrl]+[↓]で移動して、 もう一つ下にカーソルを移動する、って方法です。

  • CC_T
  • ベストアンサー率47% (1038/2201)
回答No.1

>最下行の先頭 ってどこだろう(^^; 入力済みセルがある一番下の行を指定するなら、  Last_row=Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row といった感じで、下から検索して「空白でないセル」が出てくる行が入力済み最下行です。 +1すれば新規入力行になりますね。 Excelでは良く使うので、「@さいかぎょう」なんて読みで辞書登録しておくと便利。

関連するQ&A

  • A1から最下行までを選択するVBA

    offise2000です。 EXCEL VBAです。 A1からセルの最下行までの範囲を別シートに貼付するVBAを教えてください。   Range("A1").End(xlDown).select で最下行のセルを選択するところまでは調べたのですが、基本がないので応用がききません。宜しくお願いします。

  • エクセルVBAでセル選択

    エクセル2000でリストを作成し、VBAで編集しようとしています。 A列に入力されているコードの先頭に「’」をつけて文字列とするための関数をB2のセルからA列のデータが入力されている最後のセルの隣までコピーしたいと思っています。 A列の最終セルを取得するVBAは分かったのですが、その値をB列の選択範囲として使用する方法がわかりません。 エクセルVBAは全くの初心者です。 どなたか教えてください!

  • excel VBAについて質問します

    excel VBAについて質問します A列のセルには単なる数値や「44+30」のようなデータが入っているものがある。 ' + の記号があったら、セルの先頭に = を追加して計算させて答えを表示しなさい。 'マクロ実行後、A列には、数値だけが表示されることとする。 マクロ実行前   ⇒  マクロ実行後 22   --------------- 22 44+30 --------------- 77 35 -------------------- 35 22+11 --------------- 33 こういった感じにしたいんですがなかなか上手く行きません。

  • Excel VBA アクティブセルからある一定のセルまでの範囲選択

    Excel VBA アクティブセルからある一定のセルまでの範囲選択 Excel2003を使用しています。 アクティブセルからC列に『計』と入力されている行の1行上のD列までを選択状態にするマクロを作成しようとしています。 C列に『計』と入力されている行は下記のように複数あるので、アクティブセルの行以下に入力されている次のC列の『計』の1行上までとしたいのですが、どのようにコードを書いたらいいでしょうか? 例えば… A2セルをアクティブにしていてマクロを実行するとA2:D3が選択状態に A7セルをアクティブにしていてマクロを実行すると、A7:D9が選択状態になるように という具合です。 わかりづらくて申し訳ありませんが、よろしくお願いします。    A     B     C     D 1  日付    №   品名    金額 2  1/1     1    ○○○   1,000 3  1/2     2    ×××   1,500 4              計      2,500 5 6 7   1/1     5    ○×○   2,000 8   1/3     6    ××○   1,200 9   1/4     7    ×○○   2,500               計      5,700            :            :

  • エクセルのマクロで特定セル(最終セルの1つ下)への移動方法を教えて下さい

    エクセルでデータの最終セルのもう1つ下のセルに移動する マクロを作れますか?  例えば、住所録をリストで作成していたとします。 マクロを実行したら、新規レコードを入力するセル (*が入ってるセルです)にアクティブセルを移動する ・・・というマクロです。 コードの方法は教えてもらったのですが、コードがわからない方に 教えてあげたいのですが、マクロの記録でも同じことができますでしょうか?  よろしくお願いします!!

  • VBAでシェープ

    例えばA1セルに”えくせる”と入力されていたとします。 ここでマクロを実行すると、A1セルにぴったり合うぐらいの大きさでテキストボックスが作成され、A1セルの”えくせる”という文字がテキストボックスに入力されるというマクロのコードが知りたいのですが、何回思考してもうまくいきません。とある方のホームページでダウンロードしたワークシートに、同じようなマクロがあったので技術的には可能と思うのですが。 ちょっと難しいと思うのですが、どなたかVBAのプロの方がおられたら教えて頂きたいです。

  • EXCEL VBA シート内の特定のセルに値が入…

    EXCEL VBA シート内の特定のセルに値が入力された際に処理を実行するプログラム EXCELシート内の特定のセルに値が入力された際に処理を実行するプログラムをEXCEL VBAで作成したいと考えています。 EXCELに計測データを取込み、このデータが設定値以外の場合のみ、トリガーを出す様なイメージで使いたいと思います。 どの様に考えれば良いでしょうか?サンプル等ありましたら紹介ください。 上記質問の”トリガー”について補足します。 あるセルに値が入力されたら、マクロを実行するという風にしたいという意味です。 単純にマクロ実行を手動で行うのでは無く、ある値が判定値以外の場合に他アプリケーションを操作したいという意味です。。

  • 特定のセルへは入力や編集、移動もさせない方法は?

    エクセル2000でデータベースライクな表を作成しています。 シート1がデータベースシート、シート2が入力用のシートを同じブックに作成してあります。 入力用のシート2で選択されたデータがマクロを実行すると シート1のデータベースシートに挿入されるようになっています。 うっかりシート2の見出し部分を選択したままマクロを実行してしまうことの無いように 見出し部分へカーソルが移動しないように設定したいです。 簡単で分かりやすい設定方法があれば教えてくださいませんか?

  • 複数行の最下行の範囲選択

    こんにちは、マクロ初心者です。    A  B  C  D  E  F  G  H  I 1  あ  あ  あ        あ  あ     あ 2  あ  あ  あ        あ  あ     あ 3  あ     あ                 あ 4        あ                 あ 5        あ                 あ 6        あ                 あ 7        あ                 あ 8        あ                 あ 9        あ 10 上記のような表があるとき セル"A"列から"I"列までの最下行にあたる行を検索し、 更に最下行までの範囲をコピーして、別シートにコピーさせたいのです。 (上記の例だと、セル"A1"~"I9"の範囲をコピーする) Range("A1", Range("I1").End(xlDown)).Select Selection.Offset(0, 0).Select 上記のコードでできると思ったのですが、なぜか不必要な範囲まで選択されてしまいます。 (下方向に数行余計に選択されてしまう) これではダメなのでしょうか? ちなみに、数式などは入っておらず、入力されていないセルは全て空白です。 A列だけの最下行を選択するというのは簡単に出来たのですが、このように複数の範囲を 選択する場合は、どのようにコードを書くべきでしょうか。 マクロのスキルが無い為困っています。 アドバイスをよろしくお願いいたします。

  • Access2000でデータベースの最適化

    お世話になります。 Accessのマクロのコマンドで データベースの最適化をしたいのですが、 「マクロまたはVisual Basicコードの実行中に、開いているデータベースを最適化することはできません。」とういうエラーメッセージが出て最適化されません。 マクロの一連の流れの「最後」で、データベースの最適化をしたいと 思っていますが、具体的にどのようにすれば、 データベースの最適化を実行できるのでしょうか? 条件としては、最適化をVBAなどでするのではなく、  マクロのコマンド:データベースの最適化 でしたいと思っております。 「マクロのコマンド:データベースの最適化」があるので、 必ずできるはずだとおもうのですが、 何卒宜しくお願いします。