下記のような表があって表の最終行に行を挿入したい場合にこのようなマクロを組んでみたのですが、思ったような動きをしてくれません。
アドバイスを頂けたらありがたいです。またこの場合名前の定義などを使う必要はあるのでしょうか。どうかよろしくお願いします。
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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
餃子を食べるとき、何をつけますか?
みんな大好き餃子。 ふと素朴な疑問ですが、餃子には何をつけて食べますか? 王道は醤油とお酢でしょうか。
-
一回も披露したことのない豆知識
あなたの「一回も披露したことのない豆知識」を教えてください。 「そうなんだね」と「確かに披露する場所ないね」で評価します。
-
CDの保有枚数を教えてください
ひとむかし前はCDを買ったり借りたりが主流でしたが、サブスクで簡単に音楽が聴ける今、CDを手に取ることも減ってきたかと思います。皆さんは2024年現在、何枚くらいCDをお持ちですか?
-
牛、豚、鶏、どれか一つ食べられなくなるとしたら?
牛肉、豚肉、鶏肉のうち、どれか一種類をこの先一生食べられなくなるとしたらどれを我慢しますか?
-
あなたの習慣について教えてください!!
あなたが習慣だと思って実践しているものを共有してくださいませんか? 筋肉トレーニングでも朝シャワーでも、あなたが習慣だなと思えば何でも構いません
-
VBA 最終行に10行、行を挿入する作業。
その他(Microsoft Office)
-
EXCEL 最終行に行を挿入(追加)する方法
Excel(エクセル)
-
Excelのマクロで最下行を選択して「一行挿入する」マクロの記述を
Excel(エクセル)
-
-
4
マクロ 最終列をコピーして最終列の次の列に挿入する
Visual Basic(VBA)
-
5
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
6
エクセルVBA 行追加時に自動で罫線を引きたい
Excel(エクセル)
-
7
マクロで最終行を取得してコピーしたい
Visual Basic(VBA)
-
8
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
9
エクセル マクロ オートフィルの終点の指定について
Excel(エクセル)
-
10
Excelで一行おきに2行の空白行を挿入したい
その他(Microsoft Office)
-
11
B列の最終行までA列をオートフィル
Visual Basic(VBA)
-
12
エクセルで最下行にデータを追加するVBA
Excel(エクセル)
-
13
VBAで文字列を数値に変換したい
Excel(エクセル)
-
14
Excel VBA コンボボックスで空白を削除
その他(Microsoft Office)
-
15
VBAで特定の文字が入力されたセルを選択
Excel(エクセル)
-
16
UserForm1.Showでエラーになります。
工学
-
17
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
18
特定の文字を条件に行挿入とそこからセルデータを追加するVBAについて
Visual Basic(VBA)
-
19
VBAで条件が一致する行をコピーしその1つ下へ挿入
Excel(エクセル)
-
20
【マクロ】【VBA】別ブックへのデータ転記について
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの関数ついて
-
エクセル初心者です 用語とか良...
-
excelVBAについて。
-
Excelの警告について
-
excelVBAについて。
-
フィルター時の、別の列に書い...
-
最新I/e?のキャッシュクリア
-
フィルターをかけた時の、別の...
-
Excelの数式について教えてくだ...
-
エクセルシート保護を解除させ...
-
excelVBAについて。
-
エクセルの数式バーのフォント...
-
excelVBAについて。
-
エクセル 別セルの2進数表示を...
-
カーソルを合わせてる時のみ行...
-
【VBA】使ってたクエリの接続を...
-
条件付き書式の効率的な設定の...
-
IF 日付範囲に入っていたら
-
Excelの数式について教えてくだ...
-
同率順位の発生しないランキン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの警告について
-
エクセルの数式バーのフォント...
-
【Excel】日付に連動してプルダ...
-
【再投稿】レイアウトが異なる...
-
Excelについて教えてください ...
-
同率順位の発生しないランキン...
-
エクセルマクロについて教えて...
-
【Excel VBA】 テキストファイ...
-
Excel 標準フォントについて教...
-
Excelの計算で差分を求める場合...
-
Excelの区切り文字について質問...
-
大容量があつかえるソフトを探...
-
エクセルの計算式について(COU...
-
エクセルについて
-
今までは、 「CSVの出力先を選...
-
Excel ショートカットで列、行...
-
8:40までの出勤は全て8:30に...
-
if関数。半角文字や全角文字で...
-
エクセルの関数
-
毎週追加して行くセルの数値を...
おすすめ情報