![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?a65a0e2)
下記のような表があって表の最終行に行を挿入したい場合にこのようなマクロを組んでみたのですが、思ったような動きをしてくれません。
アドバイスを頂けたらありがたいです。またこの場合名前の定義などを使う必要はあるのでしょうか。どうかよろしくお願いします。
A B C D E F
1 商品一覧
2 品名 売値 原価 利益
3 たい 1000 800 200
4 ひらめ 1200 800 400
5 かれい 1050 1200 -150
6 さわら 300 150 150
※ ここに行を挿入したい※
Sub 行挿入() '表の最下行に行を挿入
Dim n As Long
n = Range("商品一覧").Rows.Count
Range("商品一覧").Cells(n, 1).EntireRow.Insert
End Sub
No.8ベストアンサー
- 回答日時:
セル範囲を"商品一覧"という名前で定義されているのでしょうね?
定義されていなかったら、エラーですから...
Sub 行挿入() '表の最下行に行を挿入
Dim n As Long
n = Range("商品一覧").Rows.Count
Range("商品一覧").Cells(n, 1).EntireRow.Insert
End Sub
をそのまま使うとして、
セル"A1:A7"の範囲を"商品一覧"という名前定義したら、"A6"の下("A7"のところ)に一行入りました。
上記の定義範囲は、セル範囲が、A列の1行~7行なので...
それをカウントすると、n = 7 です。
なので、
> 商品一覧のすぐ下の行に挿入されてしまい求めているものができません。。
-------------------
これは、おそらく...
"A1"のみ名前定義されているので、Offset(1)しても、その下の行にしかOffsetしないので、
商品一覧のすぐ下の行に挿入されてしまうものと思われます。
("A1"のみだと、n = 1)
データの最終行に追加で挿入したいということであれば、merlionXX様、takana_様のご回答が、
ご希望のご回答のように思えますが、いかがでしょうか?
同じことをするにも、色々なやり方があるので、私も勉強になりました。
No.7
- 回答日時:
「商品一覧」の範囲は正常に指定できていますでしょうか?
n への代入後
Msgbox n として、nが正常か確認してください。(もしくはブレイクポイントとか使って)
例の場合なら1~6行目の6か、2~6行目の5ですよね?
それと、Cells(n, 1)ではなくCells(n+1, 1)ではありませんか?
Cells(n, 1)だと、さわらの上に行が挿入されそうな…?
No.6
- 回答日時:
merlionXXさんも書かれているとおり、Range("商品一覧")の商品一覧の意味がわからないのですが、
6の下に1行追加するだけなら以下のマクロで出来ると思います。
Sub 行挿入() '表の最下行に行を挿入
With Range("A1").CurrentRegion
.Rows(.Rows.Count + 1).EntireRow.Insert
End With
End Sub
No.5
- 回答日時:
おっしゃることがよく理解できないのですが、お書きのデータの最下行(さわら)の下に行を挿入するのですか?
ということは、この表の下の方にもまだ何らかの入力されたセルがあるのですね?
そうでなければこの行の挿入はまったく無意味ですから。
そうだとしたら、end(xlUp)で下から探せませんので上から探すことになります。
表がA1から連続しているものとして
Cells(1, 1).End(xlDown).Offset(1).EntireRow.Insert
でいかがでしょうか?
あるいは、想像ですが、現在の表の範囲設定してある"商品一覧"という名前定義の範囲を一行下まで拡張したいという意味なのでしょうか?
だとしたら
Sub test01()
With Range("商品一覧")
Set myRng = .Resize(.Rows.Count + 1)
ActiveWorkbook.Names.Add Name:="商品一覧", RefersTo:=myRng
End With
End Sub
でどうでしょうか?
No.4
- 回答日時:
>またこの場合名前の定義などを使う必要はあるのでしょうか。
お示しの表内で「商品一覧」の範囲を
=Sheet1!$A$1:$D$6
としていらっしゃると存じますので、「6 さわら 300 150 150」の次の空白行も含めて
=Sheet1!$A$1:$D$7
として、「Sub 行挿入() '表の最下行に行を挿入」はそのままでお試しになってみてください。
No.3
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
- Excel(エクセル) 製品番号での整列と、検索に関して 3 2023/06/28 19:20
- Visual Basic(VBA) VBAで最新のデータを別シートに転記する方法をお教えください。 3 2022/04/07 19:20
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
- Visual Basic(VBA) ユーザーフォームの表示を追加したい 2 2023/03/26 23:18
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- Visual Basic(VBA) Sheet1の出荷日と品名が並んだ表からSheet2の品名別出荷日別の個数一覧表を作っています。 オ 3 2022/12/01 23:54
- Excel(エクセル) フォルダ内の全ブックのシート名を変更したい 7 2022/09/22 21:34
- Excel(エクセル) 並べ替え、ソートの構文がわからない。 お世話になります。VBA超初心者です。 エクセルでワークシート 2 2023/06/28 21:00
このQ&Aを見た人はこんなQ&Aも見ています
-
あなたの「必」の書き順を教えてください
ふだん、どういう書き順で「必」を書いていますか? みなさんの色んな書き順を知りたいです。 画像のA~Eを使って教えてください。
-
歳とったな〜〜と思ったことは?
歳とったな〜〜〜、老いたな〜〜と思った具体的な瞬間はありますか?
-
もし10億円当たったら何に使いますか?
みなさんの10億円プランが知りたいです!
-
この人頭いいなと思ったエピソード
一緒にいたときに「この人頭いいな」と思ったエピソードを教えてください
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
EXCEL 最終行に行を挿入(追加)する方法
Excel(エクセル)
-
Excelのマクロで最下行を選択して「一行挿入する」マクロの記述を
Excel(エクセル)
-
VBA 最終行に10行、行を挿入する作業。
その他(Microsoft Office)
-
-
4
マクロ 最終列をコピーして最終列の次の列に挿入する
Visual Basic(VBA)
-
5
マクロで最終行を取得してコピーしたい
Visual Basic(VBA)
-
6
Excel VBA 空白セルがあったらメッセージボックスで知らせたい
Visual Basic(VBA)
-
7
B列の最終行までA列をオートフィル
Visual Basic(VBA)
-
8
VBAで条件が一致する行をコピーしその1つ下へ挿入
Excel(エクセル)
-
9
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
10
複数指定セルの可視セルのみを別シートに転記するVBAについて
Visual Basic(VBA)
-
11
VBAコンボボックスで選択した値をシートに転記したい
Visual Basic(VBA)
-
12
エクセルで行挿入した際、自動的に計算式も入力される方法を教えて下さい。
Excel(エクセル)
-
13
VBAでブック保護非保護を判定するには?
Excel(エクセル)
-
14
別のシートから値を取得するとき
Visual Basic(VBA)
-
15
エクセルの表で10行毎に1行づず新しい行を挿入する方法
Excel(エクセル)
-
16
VBAでシートコピー後、シート名が重複している時の処理
Access(アクセス)
-
17
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
18
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
19
エクセル マクロ オートフィルの終点の指定について
Excel(エクセル)
-
20
excelで、セル内に文字が入力される毎に行が自動挿入される仕組みを作りたいのですが…
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 偶数月の15日(土日祝...
-
Excelの数式について教えてくだ...
-
Excelのメニューについて
-
VLOOKUP FALSEのこと
-
エクセル内に読み込んが画像の...
-
【マクロ】1回目の実行後、2...
-
勤務外時間を出す表が作りたい
-
Excelで作成した出欠表から日付...
-
エクセルの数式について教えて...
-
【マクロ】参照渡しとモジュー...
-
Excelの条件付書式について教え...
-
【マクロ】シート追加時に同じ...
-
マクロを実行すると、セル範囲...
-
【マクロ】参照渡しについて。...
-
Excel 日付の表示が直せません...
-
エクセルで、数字の下4桁の0を...
-
【マクロ】Call関数で呼び出し...
-
別のシートの指定列の最終行を...
-
Excelのデーターバーについて
-
Excelでの文字入力について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】重複する同じ行を、...
-
Excelの条件付き書式のコピーと...
-
vba 印刷設定でのカラー印刷と...
-
VBA の単語の意味を教えて下さい。
-
Excel 日付の表示が直せません...
-
エクセル 同じ行の隣り合う数字...
-
エクセル条件付き書式について。
-
エクセルの数式につきまして
-
ファイル名の変更
-
エクセル 数字のみ抽出につて
-
Excelの開始ブックを固定したい...
-
エクセルの数式について教えて...
-
エクセルのセルをクリックする...
-
=INDIRECT(RIGHT(CELL("filenam...
-
エクスプローラーで見ることは...
-
Excelの関数で質問です
-
至急お願いいたします 屋上の備...
-
エクセルでセルに入力する前は...
-
関数を教えて下さい
-
Excel 関数での質問です
おすすめ情報