• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルマクロにて条件比較後にセル挿入をしたい)

エクセルマクロで条件比較後にセル挿入をする方法

ham_kamoの回答

  • ham_kamo
  • ベストアンサー率55% (659/1197)
回答No.5

> やはりセル分記述するしかないのでしょうか? いえ、その必要はありません。たとえば、 Range(Cells(i, 3), Cells(i, 10)).Insert Shift:=xlShiftDown とすると、「i行3列目からi行10列目まで」という意味になり、たとえばiが1の場合、C1:K1の範囲を意味します。(C1とK1ではありません) また、 Cells(i, 3).Resize(1, 2).Insert Shift:=xlShiftDown は、「i行3列目から横に2列」を意味し、これを Cells(i, 3).Resize(1, 10).Insert Shift:=xlShiftDown にすると、「i行3列目から横に10列」を意味し、iが1の場合、C1:L1を意味します。

関連するQ&A

  • エクセルマクロ、空白行(セル)の挿入

    データがA、B、C、D、E列100行まであります。 このうちD、E列を除き、エクセルのマクロで1行ごとに空白で10行挿入したいです。 (A、B、C、D列のデータに空白セルを10行分挿入し、下にシフトするイメージ。D、E列はそのまま。) ご教授頂きたく、お願いします。

  • EXCELで式での空白セルの挿入方法

    A列は空白行で、B列は数値が入っていたり空白だったりする行で構成されています。 またC列からD列までの全ての行には数値が入っています。 この時A列に条件付き数式を入力して、B列が空白でなければB列に空白セルを挿入して現B列からD列を右にシフトさせたいのですが、数式で可能でしょうか? 数式で可能ならばA列に入力する式を、不可能なら参考のためVBAでの記述をお教え頂けると嬉しいです。(VBAはあまり理解しておりませんが。) 例 【処理前】 A列 B列 C列 D列 E列     22   33  44          55  66     77   88  99         100  101 【処理後】 A列 B列 C列 D列 E列 式       22  33  44 式       55  66 式       77  88  99 式      100  101 2万行の処理を1回のみしたいです。 宜しくお願いします。

  • Excelで、条件をクリアした中の空白セルを数えたい

    Execlで、例えば、 D列にはランダムに何名か名前が書いてあり、 例えばその中で“伊藤”だけを数えたい時、 D 伊藤 伊藤 田中 鈴木 伊藤 ・ ・ ・ =COUNTIF(D1:D100,"伊藤") という関数を使って“伊藤”の数を求めました。 その後、となりのE列には、 担当業務をこなした日付が入っていて、 こなしていない場合は空白になっているのです。 私が知りたいのは、 “伊藤”が業務をこなしていない空白セルを数えたいのです。 文章が下手ですみませんが、よろしくお願いします。

  • excelのマクロで条件による行の挿入

    列AとBがあり列Aに学校のクラス名A組、B組、C組・・・(20クラスほど)と氏名が 入るエクセルシートがあるのですが 先頭行はA組から始まり5行区切りで数え、(A組も5行のうちに入る) その5行内に次のB組が入らないように空白行を挿入したいです もし、5行以内にB組がない場合、次の5行でまたB組があるか判定しなければ氏名5つ あれば空白をいれてというのを20クラスぶん作るマクロは可能でしょうか? VBAの知識がさっぱりないので途方にくれています。 元のデータの例   マクロ実行後 列A   列B      列A   列B A組           A組   氏名1 111      氏名1 111  氏名2 222      氏名2 222 B組           空白行挿入 氏名3 333      空白行挿入 氏名4 444      B組 氏名5 555      氏名3 333 氏名6 666      氏名4 444 氏名7 777      氏名5 555 C組 氏名6 666              氏名7 777              空白行挿入              空白行挿入              空白行挿入              空白行挿入              C組  

  • マクロで条件に不一致なら空白セルを挿入方法

    初めまして最近仕事でログ処理用のマクロを作成しているのですが、 マクロ初心者で、こんな場合どうしたらよいでしょうか? 教えてください。よろしくお願いします。 処理前 A列 B列 C列 jan ConnectTime feb 空白 JST mar 空白 ConnectTime apr 空白 JST may 空白 ConnectTime jun 空白 ConnectTime 処理後 A列 B列 C列     D列 jan ConnectTime feb 空白   空白    JST mar 空白 ConnectTime apr 空白   空白    JST may 空白 ConnectTime jun 空白 ConnectTime この場合B1にIF(C1="ConnectTime","","セルを挿入し右にシフト")的な処理をし、B列に適用させたいのですが可能でしょうか? よろしくお願いします。

  • EXCEL VBA 条件による空白挿入

    EXCEL2003を使っています。 以下のように列FGHが空白の行については列ABCを空白を挿入したいのですが数万行あり処理をVBAで自動化したいです。どなたかお力をお貸し下さい。お願いします。 A B C D E F G H 1 1 2 3 4 5 6 7 8 2 1 2 3 4 5 _ _ _ 3 1 2 3 4 5 6 7 8 4 1 2 3 4 5 _ _ _ 5 1 2 3 4 5 6 7 8 ↓ A B C D E F G H 1 1 2 3 4 5 6 7 8 2 _ _ _ 1 2 3 4 5 3 1 2 3 4 5 6 7 8 4 _ _ _ 1 2 3 4 5 5 1 2 3 4 5 6 7 8

  • マクロによるセル挿入

    エクセルについて教えて下さい。 いま仮に、        ABCDE ~ U VWX YZ 1行 あいうえお    アイウエオ 2行 かきくけこ    カキクケコ 3行 さしすせそ    サシスセソ     :         : とデータが入っていてV~Z列はそのままに、A~U列の行間にだけ16行の空白行を作りたいのです。 つまり最終的に、    ABCDE ~U VWX YZ 1行 あいうえお   アイウエオ 2行           カキクケコ 3行 (空白)     サシスセソ     :         : 17 かきくけこ     :   (空白)     : 33 さしすせそ     :   という感じなのですが、これを手作業でA2:U16を選択してセル挿入→A18:U32を選択して挿入と繰返していては時間がかかってしまうので、マクロによって一発で出来る方法はありますでしょうか? お詳しい方がいましたらお手数ですが教えて下さい。

  • エクセルマクロでのセルの削除、挿入

    A1:G20の表があります、A1:G17にデータが入っています、20行目は合計欄です。 ここでデータ面の任意のセルをアクティブにしアクティプセルとその右のセル2個をマクロで削除し上に詰めます。(B5がアクティブだとB5、C5、D5が削除) 当然合計欄の当該列のセルが上に移動します。その為18行でセル挿入を行い20行目に合計が表示されるマクロの記載を教えてください。よろしくお願いいたします。

  • エクセルのマクロで全シ-ト複数条件検索

    エクセルで全シートから複数項目で検索をかけ、条件に合う項目の行ごと 新しいシートに抽出結果として表示することは可能なのでしょうか。 初心者なりに考え、無様なコードではありますが、 検索条件が1つであれば、条件にあう行をすべて抽出することはできました。 ですが複数、または列ごと条件として指定することができず、難儀しております。 たとえば Sheet1    A    B    C    D 1      田中太郎   男   穏やか  2      鈴木次郎   女   うっかり 3      山田三郎   女   怒りっぽい 4      佐藤四郎   男   せっかち Sheet2    A    B    C    D 1      伊藤五郎   女   用心深い 2      加藤六郎   男   ずぼら 3      斎藤七郎   女   臆病 4      後藤八郎   男   陽気 Sheet3    A    B    C    D 1      【条件】 2      加藤六郎 3      鈴木次郎 4      山田三郎 5      後藤八郎 マクロ実行後↓ 新しいシート    A    B    C    D 1      加藤六郎   男   ずぼら 2      鈴木次郎   女   うっかり 3      山田三郎   女   怒りっぽい 4      後藤八郎   男   陽気 といった具合にしたいと考えております。 この場合ですと、B列全体を条件としたり、 Sheet3の条件が入力されているセルすべてを検索条件として 渡すことはできるのでしょうか。 実際のシートでは、条件が10個~100個ほどあり、 シートごとに数はばらばらになっております。 どうかわかる方、お力をお貸しください。

  • エクセルのマクロ(行を挿入し連番を振る)

    ボタンを押すと以下のことを実行するマクロを作成することはできますか? A列2行目から 書類a 書類b 書類c 書類d 書類e C列2行目から 5 3 2 4 3 と入っています。C列は各書類の枚数です。 ボタンを押すと書類aと書類bの間に4行空白行が挿入され、A列とC列は増やした4行にそれぞれ書類a、5がコピーされ、B列には2列目から6列目まで1.2.3.4.5と連番が振られる。 というマクロです。 B列C列で1/5 2/5 3/5 4/5 5/5 であるという表現がしたいのです。(/は入りません) 書類が1枚の場合はB列C列共に空白で1/1とは入りません。 C列に入る書類の枚数により行が挿入されその書類の枚数分の連番が振られるようなマクロが作りたいです。 毎日何百行も手作業で挿入しコピーし連番を振る作業をしています。 決まった行数を増やすとか上の行をコピーするマクロならわかるのですが、C列の値を見て挿入する行数を判断するようなマクロができるのかわかりません。 どなたか教えて頂けないでしょうか。