![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
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(エクセル)
-
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
-
4
値を入力後、自動的にアクティブセルが移動するマクロ
Excel(エクセル)
-
5
マクロでセルを1行下に移動する方法
Excel(エクセル)
-
6
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
7
Excelマクロ セルを行頭に移動
Excel(エクセル)
-
8
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
9
Excel VBA、 別ブックの最終行セルへのコピー&値ペースト
Visual Basic(VBA)
-
10
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
11
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
12
VBAを教えてください。
Access(アクセス)
-
13
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
14
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
15
UserForm1.Showでエラーになります。
工学
-
16
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
17
Excel VBA あるセルでENTERを押すと特定のセルへ移動したい
Excel(エクセル)
-
18
エクセルファイルを開く時、常に同じシートから開くようにするには?
Windows Vista・XP
-
19
VBA別シートの最終行の下行へ貼り付けされるようにしたいです。
その他(Microsoft Office)
-
20
VBAでユーザーフォームにセル値を表示させるには
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのマクロについて教えてく...
-
エクセルVBAコードで教えて下さ...
-
VBAコードについて教えてくださ...
-
vba アクティブシートの名前変...
-
Outlookの「受信日時」「件名」...
-
Excelのマクロについて教えてく...
-
Excelのマクロについて教えてく...
-
VBA 別ブックからコピペしたい...
-
Excelのマクロについて教えてく...
-
Excelのマクロについて教えてく...
-
VBAの計算で@が出てしまう件
-
エクセルのマクロについて教え...
-
Outlookにて既にウィドウ単体で...
-
ユーザーフォームに別シートか...
-
Excelのマクロについて教えてく...
-
Vba 実数および実数タイプの変...
-
Excelのマクロについて教えてく...
-
久しぶりのプログラミング
-
エクセルVBA
-
Excelのマクロについて教えてく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAで大量のファイルをシート名...
-
VBA レジストリの値の読み方に...
-
Excelのマクロについて教えてく...
-
ユーザーフォームに別シートか...
-
VBAの計算で@が出てしまう件
-
エクセルVBAについて
-
Vba 実数および実数タイプの変...
-
【ExcelVBA】値を変更しながら...
-
VBA一覧取得 再投稿
-
VBA指定行削除
-
エクセルVBAについて
-
VBA ユーザーフォーム ボタンク...
-
VBA 何かしら文字が入っていたら
-
エクセルについて
-
2つのマクロでチェックボックス...
-
【マクロ】1つのマクロの中に...
-
ExcelのVBAコードについて教え...
-
VB.net(VB)で、フォームにExcel...
-
Vba SelStart、SelLen教えてく...
-
Excel-VBAのmsgBox()の不思議
おすすめ情報