投稿回数変更のお知らせ

新規作成ボタンを押すと新しく入力できる欄が挿入されるようにVBAで作りたいのですが、
全くのド素人なので、貼り付けたらいいだけのVBAを教えていただけないでしょうか?
開発タブを押してVisual Basicを開いてどこに貼り付けるのかも教えていただきたいです。
(できれば画像付きで)

この添付図でいうと
新規作成ボタンを押すと、EF列がコピーされてE列の前にそのコピーが挿入されるようにお願いします。

ご教示のほどよろしくお願いいたします。

「列挿入をVBAで」の質問画像
  • 画像を添付する (ファイルサイズ:10MB以内、ファイル形式:JPG/GIF/PNG)
  • 今の自分の気分スタンプを選ぼう!
あと4000文字

A 回答 (3件)

頭の中にある「やりたいこと」を明確かつ正確に言葉で表現出来ないと、他人にVBAコードを書いてもらうことは出来ません。


まずはそこから。
    • good
    • 0

No1です。



>右へ右へ新しい欄が増えて欲しいので、~~
ご質問文には、
>EF列がコピーされてE列の前にそのコピーが挿入される
とあるだけなので、これを行えば、(元の)EF列以降は右へずれていくことになります。

また、「そのコピーが挿入される」のと「新しい欄が増えて」は内容的にも異なります。
前者は、コピー元にデータがあればその複製が作成されますが、後者は一般的にはデータの入力の無い新しい空欄が作成されることを意味すると思います。

「新しい欄を増やす」という処理の場合は、通常であれば一番右側の欄(あるいはひな形となっている欄)を、最終列の右側にコピー(必要ならデータをクリア)するような処理を行うものと思います。
これに対して、ご質問文では「E列の前にそのコピーが挿入される」という「表の中間にコピーを挿入」という処理になっているので、ご質問文にある内容の通りであれば「同じ処理の繰り返しで対応できるもの」と読み取りました。

実際に何をなさりたいのかもさっぱりわからなくなりましたので、残念ながら回答はできかねます。
    • good
    • 0

こんばんは



エクセルには「マクロの記録」という機能がありますので、それを利用すれば、ご質問の内容なら自力で作成可能です。


1)マクロの記録を有効にして、
ご質問の操作を要領よく実行します。
(極力無駄な操作をしないことが肝要です)
操作が終わったら、「記録終了」にします。
これで、行った操作がマクロとして記録されます。

2)次に、ボタン右クリック時のメニューの「マクロを登録」から、上記で作成したマクロを登録します。
(マクロ名で登録しますので、作成時のマクロ名を記憶しておいてください)

以上で、ご自身でも作成可能と思います。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
もちろんそれは試しにやってみたのですが、
それだと新規作成のボタンを押すたびにEF列に新しい欄ができてしまいます。
右へ右へ新しい欄が増えて欲しいので、そちらの方法はVBAでプログラムしないといけないかなと思いまして。
よろしくお願いします。

お礼日時:2025/03/18 11:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A