• ベストアンサー

P.W.でシート保護されている行の挿入のマクロ

mar00の回答

  • mar00
  • ベストアンサー率36% (158/430)
回答No.2

Sub Macro1() ActiveSheet.Unprotect (xyz) ActiveCell.Offset(1).EntireRow.Insert Range("B1").Copy Range("B" & ActiveCell.Offset(1).Row).PasteSpecial Paste:=xlPasteFormulas Application.CutCopyMode = False ActiveSheet.Protect (xyz) End Sub 参考まで マクロ自体にパスワードが入っているので、マクロを見られないようにするには Altキーを押しながらF11キーを押す ツール→VBAProject→保護タブ プロジェクトを表示用にロックするにチェックを入れる パスワードを入力してOKすればいいと思います。

enako
質問者

お礼

mar00さん、こんにちは。 俺が大変遅くなりましてすみませんでした。 無事解決することがでこました。 どうもありがとうございました。

関連するQ&A

  • 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組  

  • シート保護の状態で行の追加を行いたい

    EXCEL2003を利用しています。      A列  B列 1行目 B   =A1 2行目 C   =A2 ■A列に変更可能な値 ■B列に関数 ※上記表記の各値はダミーです。 (1)B列の関数は変更されたくなく、表示もしたく無いので、セルの書式設定にて、セルをロック&非表示 (2)A列は変更を許可したいので、セルの書式設定にて、セルのロックを外す。 (3)上記(1)(2)を設定の上、シートの保護を実行。 ここで、3行目を挿入したいのですが、 シート保護のオプションで「行の挿入」を許可して、 普通に行の挿入を行うと、当たり前ですが、      A列  B列 1行目 B   =A1 2行目 C   =A2 3行目         となり、B列の関数はコピーされません。 ここで、2行目を選択し、3行目にコピーしようとしても、 B列がロックされている為、コピーできません。      A列  B列 1行目 B   =A1 2行目 C   =A2 3行目     =A3    上記のように行の追加を行うのが希望ですが、 何か良い方法は無いでしょうか。 なお、上記B列の関数は仮です。

  • 行挿入マクロをご教示ください

    A列の5行目から1000行ほどK列までデータが入っています。 A列からK列をB列優先でソートを行うと、B列にところどころ同じ番号が2行あったり、3行あったり、また4行とバラバラで、出てきます。 この場合、同じ番号が2行以上あるセルの上に空白の行1行を挿入し、同じ番号行分を合計して整理したいと考えています。 2行以上ある行の上に空白行を1行挿入するようなマクロをご教示ください。 どなたか、よろしくお願いします。

  • エクセルで1行ごとに空白行を挿入し、挿入した空白行に色をつけたいです

    タイトルの通りです。 エクセル(2000)で、データはシート毎に件数が違います。 各シート毎にそれぞれ1行毎、空白行を挿入し、挿入した空白行のA列~G列までに薄いグレーの色をつけるマクロを入れたいのですが、うまくいきません。 詳しい方、教えて下さい。

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

    ボタンを押すと以下のことを実行するマクロを作成することはできますか? 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列の値を見て挿入する行数を判断するようなマクロができるのかわかりません。 どなたか教えて頂けないでしょうか。

  • 保護をかけているシートでマクロが実行できない

    行挿入マクロを使用した製品管理表を作成しましたが、シートの保護をかけて行挿入マクロを実行すると「RangeクラスのInsertメソッドが失敗しました」と出ます、シートの保護を外すと実行されます。保護をかけたシートはマクロを実行できないのか、マクロ文が間違っているのかわかりません。ご教授下さい。 表は抜粋ですが以下のとおりで、15行目に行挿入マクロを実行する表作成のマクロです。 E15にはIF文が含まれています。       A     B      C       D      E       F 14    空白  納入日  使用日  納入数量  使用数量   使用m 15 マクロ文は、以下のとおりです Sub 行挿入() ' 行挿入 Macro m = Cells(15,5).Formula Range("A14:G15").Insert copyorigin:=xlFormatFromRightOrBelow Cells(15,5) = m End Sub

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

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

  • エクセル行の挿入

    excelに行を追加する方法を教えてください! Bにある数からマイナス1行下に挿入したいのです。 1→挿入なし  2→下に1行挿入  3→下に2行挿入 数よりマイナス1行の挿入をしたいのですが、 マクロ、関数など全く分かりません。 以前の質問も見てみたのですが、見当たらないのと、 マクロ?が全くわからないので、 どなたか一から教えていただけないでしょうか? 本当に申し訳ないのですが、お願いします。 Aにkkkk Bに数が入ります。   A | B | C | D ------------------------------------- 1| kkkk   2 ------------------------------------- 2| kkkk   1 ------------------------------------- 3| kkikk   3 ------------------------------------- 4| kkkk   2 ↓行の挿入   A | B | C | D ------------------------------------- 1| kkkk   2 ------------------------------------- 2| kkkk   空白(行の挿入) ------------------------------------- 3| kkikk   1 ------------------------------------- 4| kkkk   3 ------------------------------------- 5| kkkk   空白(行の挿入) ------------------------------------- 6| kkkk   空白(行の挿入) ------------------------------------- 7| kkkk   2 ------------------------------------- 8| kkkk   空白(行の挿入) -------------------------------------

  • エクセルマクロ、集計行の上に空白行挿入

    エクセルデータがA、B、C、D、E列1000行まであります。 C列基準でE列を合計するマクロを作成しましたが(集計行はデータの下に挿入)、実行の結果、新たに挿入される集計行の上に空白行を1行挿入していくということを、作成したマクロに付加できるでしょうか? ご教授頂きたく、お願いします。

  • ”アクティブセル行」の一行下を選択”するマクロ

    ■ ”アクティブセルの、1個下の行を選択し、新しい空白行を一行挿入” ■次にその”アクティブセルのA列とB列の値を、  新しく作った空白行に、コピー  ・・・といったマクロを組もうとしております。 たとえば 12行目を選択するプログラム(コマンド?マクロ?)は、  Rows(12:12) となっていたので、それにならって Rows(activecell:B) などとやってみたのですが、うまくいきませんでした。 このような場合、どうしたらよいのかアドバイスをいただけると助かります。 どうぞ、よろしくお願いいたします。