![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.7ベストアンサー
- 回答日時:
こんにちわ。
サンプルマクロを作ってみました。次のように操作してみて下さい。1.データの入力されているブックを開き、CTR+F11キーを押してVBE画面を表示させる。
2.VBAProjectの下にあるThisWokrkbookにカーソルを合わせダブルクリックする。
3.ThisWorkbookのコードエディター(右側の白い部分)が開くので、そこに下記のコードをコピー・ペーストする。
Private Sub Workbook_Open()
Dim myCell As String
myCell = ThisWorkbook.Worksheets(1).Cells(Rows.Count, 1).End(xlUp).Address
If myCell = "$A$1" Then
ThisWorkbook.Worksheets(1).Range("A1").Select
Else
ThisWorkbook.Worksheets(1).Range(myCell).Offset(1, 0).Select
End If
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim myCell As String
myCell = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Address
If myCell = "$A$1" Then
ActiveSheet.Range("A1").Select
Else
ActiveSheet.Range(myCell).Offset(1, 0).Select
End If
End Sub
4.VBAProjectの下にあるSheet1にカーソルを合わせダブルクリックする。
5.Sheet1のコードエディター(右側の白い部分)が開くので、そこに下記のコードをコピー・ペーストする。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim myRow As Long
If Target.Address = "$A$3" Then
If Target.Value <> "" Then
myRow = Cells(Rows.Count, 1).End(xlUp).Row
If Cells(myRow, 1).End(xlToRight).Column _
= Cells(myRow - 1, Columns.Count).End(xlToLeft).Column Then
Cells(myRow + 1, 1).Select
Else
Cells(myRow, Columns.Count).End(xlToLeft).Offset(0, 1).Select
End If
End If
End If
End Sub
6.ブックを保存終了し、再度そのブックを開く。
あなた様のやられたいことが実現していると思います。
もし、不都合な点がありましたら、遠慮なくお知らせ下さい。私でよろしければ、あなた様のやられたいことが実現できるまで一緒に考えたいと思います。 その際には、表の構成内容とあなた様のやられたいことを順を追って詳しくお知らせ下さい。
お手数をおかけいたしますが、よろしくお願いいたします。
No.8
- 回答日時:
Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Offset(1).Select
で、A列の最終行の次の空白セルに移動しますよ。もし、セル編集後にどの位置からでも即座にその列の最終行の次の空白セルに移動したいというのであれば、次のコードになります。
Private Sub Workbook_SheetChange(ByVal Sh As Object, _
ByVal Target As Range)
c = Range(Target.Address).Column
Cells(ActiveSheet.Rows.Count, c).End(xlUp).Offset(1).Select
End Sub
vbエディタのThisWorkbookのコードウインドウに、コピー&ペーストして使います。
No.6
- 回答日時:
はじめまして。
サンプルマクロを作ってみました。以下のように操作してみて下さい。
1.データの入力されているブックを開き、CTR+F11キーを押してVBE画面を表示させる。
2.VBAProjectの下にあるThisWokrkbookにカーソルを合わせダブルクリックする。
3.ThisWorkbookのコードエディター(右側の白い部分)が開くので、そこに下記のコードをコピー・ペーストする。
Private Sub Workbook_Open()
Dim myCell As String
myCell = ThisWorkbook.Worksheets(1).Cells(Rows.Count, 1).End(xlUp).Address
If myCell = "$A$1" Then
ThisWorkbook.Worksheets(1).Range("A1").Select
Else
ThisWorkbook.Worksheets(1).Range(myCell).Offset(1, 0).Select
End If
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim myCell As String
myCell = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Address
If myCell = "$A$1" Then
ActiveSheet.Range("A1").Select
Else
ActiveSheet.Range(myCell).Offset(1, 0).Select
End If
End Sub
4.ブックを保存終了し、再度そのブックを開く。
あなた様のやられたいことが実現していると思います。
もし、不都合な点がありましたら、遠慮なくお知らせ下さい。私でよろしければ、あなた様のやられたいことが実現できるまで一緒に考えたいと思います。
お手数をおかけいたしますが、よろしくお願いいたします。
この回答への補足
どうもありがとうございます。worksheetを開くと最終の入力セルに移動できました。欲を言えば、こんなのできますでしょうか?
入力された行がA412まであってA3の編集作業をして次に
A413の空白セル(A413)まで飛ぶやり方ですが、、
A413を指定するのではなくあくまでも次の空白セル(最終行)なのですが、、いろいろな方にアドバイスいただきましたが、私のやりたいことはそんな感じです。
どうかお知恵を拝借させてください
よろしくお願い致します。
No.5
- 回答日時:
> VBAのコマンドボタンか何かで最終行(次に入力するセル)まで一発で移動
ということであれば、
Private Sub CommandButton1_Click()
Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Offset(1).Select
End Sub' ~~~
とか、いかがでしょう。(1列目の例です。~~~の所が行数です。)
この回答への補足
アドバイスありがとうございます。
大変参考になりました。
移動したい場所は最終の空白セルなのですが、どうやって指定したらいいのでしょうか?
たびたび申し訳ありませんが、ご指導お願い致します
No.4
- 回答日時:
Ctrl+↓ (↑ → ← ↓)
は、連続する行・列に対して最後(最前)まで飛びますが、
途中でデータが抜けている(空白セル)と、そこの前まで
しか飛びません。
つまり、シートの最左・左上 A1 に飛ぶには、Ctrl+Home
ですから、その逆になります。
No.3
- 回答日時:
private sub()
Range("A1").Serect //行きたい列
Selection.End(xlDown).Select
これではダメでしょうか?
No.2
- 回答日時:
少なくとも、
Ctrl+End
で、最下行・最右セル
まではジャンプできます。
その、最下行・最右セルから、Home キー
で、最下行の A 列にシフトできます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 表内で、Enterキーで横→行の最後入力したら次の行の先頭に移動するマクロを作りたい 3 2022/05/01 21:19
- Visual Basic(VBA) Excel vbaについて知恵もしくは、コード教えて下さいm(__)m ① 表にあるデータをコピー、 2 2022/09/01 23:57
- Visual Basic(VBA) VBA 検索と入力 Excel ブック ぶぶぶ シート ししし 列V 検索対象の列です 最終行は、お 6 2023/05/17 01:40
- Visual Basic(VBA) VBA 登録ボタンを省略してエンターキーで作業 4 2022/07/09 22:29
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Excel(エクセル) マクロを教えてください 3 2023/07/31 21:57
- Excel(エクセル) マクロを教えてください 2 2023/07/30 23:05
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) Excel 表の作成について 3 2022/06/16 12:15
このQ&Aを見た人はこんなQ&Aも見ています
-
「どうして捨てられないの?」前妻の物を捨てられない男性の心理って?
前妻の物を捨てられない理由に加え、捨てるための手段はあるのかを専門家に聞いてみた!
-
マクロ 最終行のセルに移動したとき
Excel(エクセル)
-
エクセルで行の一番上にセルに移動させるVBA
Excel(エクセル)
-
マクロでセルを1行下に移動する方法
Excel(エクセル)
-
-
4
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
5
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
6
値を入力後、自動的にアクティブセルが移動するマクロ
Excel(エクセル)
-
7
VBAを教えてください。
Access(アクセス)
-
8
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
9
エクセルファイルを開く時、常に同じシートから開くようにするには?
Windows Vista・XP
-
10
Excelマクロ セルを行頭に移動
Excel(エクセル)
-
11
Excel VBA、 別ブックの最終行セルへのコピー&値ペースト
Visual Basic(VBA)
-
12
【VBA】指定した検索条件に一致したら別シートに転記したい
Visual Basic(VBA)
-
13
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
14
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
15
EXCELでワークシートを開いたらマクロを自動実行したい
Excel(エクセル)
-
16
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
17
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
18
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
19
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
20
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
サブフォルダに格納されている...
-
IF文、条件分岐の整理方法
-
VBAコードのインデント表示
-
【ExcelVBA】値を変更しながら...
-
VBA 別ブックからコピペしたい...
-
[VB.net] ボタン(Flat)のEnable...
-
【ExcelVBA】インデックスが有...
-
Excel VBA 定義されたプロージ...
-
Excel-VBAのmsgBox()の不思議
-
時間短縮のために、テキストフ...
-
vbaにてseleniumを使用したedge...
-
現在のブックを閉じないで、マ...
-
Outlookにて既にウィドウ単体で...
-
excelのVBAについて、以下のコ...
-
Excel VBA 選択範囲の罫線色の...
-
Excel関数またはVBAでの質問に...
-
Outlookの「受信日時」「件名」...
-
VBA実行後に元のセルに戻りたい
-
VBA ユーザーフォーム ボタンク...
-
VB.net(VB)で、フォームにExcel...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAなくなるの?
-
VBAでCOPYを繰り返すと、処理が...
-
vba 削除
-
プログラミング
-
Excelのマクロについて教えてく...
-
Excelのマクロについて教えてく...
-
エクセルのVBAコードについて教...
-
久しぶりのプログラミング
-
ユーザーフォームに別シートか...
-
エクセルVBAコードで教えて下さ...
-
VBA 別ブックからコピペしたい...
-
ExcelのVBAコードについて教え...
-
VBAコードについて教えてくださ...
-
vba アクティブシートの名前変...
-
Excelのマクロについて教えてく...
-
エクセルVBA
-
Geogebraの操作方法について
-
マクロの記録を使用したマクロ...
-
Excel(M365) Vlookup/セル反転(...
-
Excel 範囲指定スクショについ...
おすすめ情報