• ベストアンサー

Excelである行を挿入で他の行のずれ

 A列、B列にデータが入っていて、C列には「=if(A1<>B1,1,"")」のような式が入っています。すなわち、隣り合うA列とB列のデータが異なるときC列の該当行に1を表示し、あっている場合は空欄となるようにしてあります。B列のある行(例えばB10)を右クリックして「下方向にシフト」としますと、C列が影響を受けてしまい、「=if(A10<>B11,1,"")」のようになってしまいます。Bがシフトした分だけ、修正してくれちゃうんですね。  私がしたいのは、シフトした後であっても、A列とB列の同じ行を比較したいのです。B行の「下方向にシフト」の操作をしても、C行に影響を与えない方法がありましたら、お教えください。

  • qmm
  • お礼率60% (74/123)

質問者が選んだベストアンサー

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

=IF(A10<>INDIRECT("B"&ROW()),1,"") とか =IF(A10<>OFFSET($B$1,ROW()-1,0),1,"")

qmm
質問者

お礼

ありがとうございました。これまででベストの方法だと思います。

その他の回答 (4)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.5

NO1です。 切り取り→その下の行で貼り付けではなく、切り取り→切り取ったセルを挿入で如何でしょうか。

qmm
質問者

お礼

理解力不足で、すみません。 例えば、データがB1からB100まであって、B10以降を下方向にシフトする場合、 [1] B10:B100の選択 [2] ctrl+x [3] カーソルをB11へ [4] Alt+(IE) でしょうか。それですと、「この選択は正しくありません」と出てしまいます。

  • nobu555
  • ベストアンサー率45% (158/345)
回答No.4

C列の行位置と完全(A列も)に対比させるのなら、 =IF(OFFSET(C1,,-2)<>OFFSET(C1,,-1),1,"") ですかね。 参照先が判りづらいので、 行がずれないように気をつけた方が良いのでは?

qmm
質問者

お礼

 なるほど。完璧ですね。勉強になりました。しかし、Aは動かさないので、mshr1962さんの方法でも大丈夫ですね。甲乙つけがたいご回答です。ありがとうございました。

回答No.2

 手元にエクセルがないので確認作業が取れませんがB列をF4で固定すれば良いのではないかな。 C列に入力するときに「=if(A10<>$B$10,1,"")」と言った感じで。式を入力時にB列を選択して、F4キーを押すとこうなります。

qmm
質問者

お礼

 固定は良さそうですが、C列全部に一括して入力する方法が分かりません。最初の方法では、C1に「=if(A1<>B1,1,"")」を入力して、それを、C2以下に一括コピーができますよね(行番号が自動的に変わって)。その操作後、固定する方法があればいいですね。ありますでしょうか。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

行単位にコピー→右クリックでコピーした行を挿入で如何でしょうか。

qmm
質問者

お礼

すみません。もう少し説明して頂けませんか。 なお、「挿入する行より下を選択して、切り取り→その下の行で貼り付け」としてもトラブルが起こります。

関連するQ&A

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

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

  • エクセルデータの並べ替えに関して

    エクセルデータの並べ替えに関して A列からH列まで数値が入っていて、それが8,000行くらいあります。(毎回変動します。) A1からH8000くらいのセルに値が入っています。 エクセルを縦長に使用しているので、このまま印刷をすると印刷面の右側半分以上が空白に なってしまいます。 マクロを利用して、これらの値を96行ごとに2列分けたいと思っていますが、どうやったら 良いか、教えていただけないでしょうか。 (マクロ実行前)--------------  A B C D E F G H 1 1 2 3 4 5 6 7 8  2 2 3 4 5 6 7 8 9 3 3 4 5 6 7 8 9 10 4 4 5 6 7 8 9 10 11 ・・・・・・ ---------------------------- のように下方向に数字が並んでいる場合、マクロを実行したら 次のようにしたいと思っています。 (マクロ実行後)--------------  A B C D E F G H (I) J K L M N O P Q 1 1 2 3 4 5 6 7 8(1行空き)97 98 99 100 101 102 103 104 2 2 3 4 5 6 7 8 9(1行空き)98 99 100 101 102 103 104 105 3 3 4 5 6 7 8 9 10(1行空き)99 100 101 102 103 104 105 4 4 5 6 7 8 9 10 11(1行空き)100 101 102 103 104 105 106 ・・・ 96 96 97 98 99 100 101 102 103(1行空き)192 193 194 195 196 197 198 199 97 193 194 195 196 197 198 199 200(1行空き)289 290 291 292 293 294 295 296 ・・・・・・ ---------------------------- (1)A1からH96までを切り取って、J1に貼り付ける。 (2)「(1)」で切り取って出来た空欄を削除して上方向にシフトする。 (3)A97からH192までを切り取って、J97に貼り付ける。 (4)「(2)」で切り取って出来た空欄を削除して上方向にシフトする。 といった操作を「切り取って出来た空欄を削除して上方向にシフトする。」という操作を しようとしたら上方向にシフトするデータがなくなるところまで続けたいと 思っています。

  • エクセル 行挿入のマクロについて

    こんばんは、エクセルのマクロについてお伺いします。 現在 A1:支店名 B1:連番 C1:在庫数 全部で1000行位入力があります。 ・A列には支店名 ・B列には連番は1・2・3~と1000件位 ・c列には在個数にはそれぞれ1桁から2桁の数字 【質問】 在庫数の数だけその連番の行を増やしたい。 例えば、 A2:東京支店 B2連番:1 C2在庫数:3 だとすると2行目のあとに2行挿入し在庫数が3なので下記のように3行にしたい。 A2 東京支店 B2連番 1 C2 在庫数 1 A3 東京支店 B3連番 1 C3 在庫数 空欄 A4 東京支店 B4連番 1 C4 在庫数 空欄 何せ数が多いのでマクロをお教え頂ければ助かります。 ※その際、支店名と連番は同じ物がはいるとありがたいです。 ※在庫数は空欄で構いません。 マクロでなくても方法があればお教え下さい。 よろしくお願い致します。

  • Excelの行挿入で

    Excelのシートにデータがつまっているのですが(これから新しく表を作るということではないということです。)、行の挿入をしたいのです。 このとき、行を選択して、右クリックで「挿入」を選べば挿入自体はできます。 しかし、 既にある表は、行が、A列とB列が結合されているのですが、 単に上記のように挿入すると、 A列B列が分かれている行が挿入されてしまいます。 新しく挿入された行のA列とB列を選択して、「セルの書式設定」の「配置」でセルを結合させてもいいのですが、 いちいちそうしなくても 挿入時点ですでに結合されているようにするにはどうすればよいですか。 (Excel2000)

  • Excelで、同一データ行を知るには

    Excel2000で、 A列からD列までまったく同じデータの場合、色をつけてくれる方法を教えてください。 例えば、 A20=A100 かつ B20=B100 かつ C20=C100 かつ D20=D100 の場合、同じデータとして、20行目と100行目に色をつけるようにしたいです。 次善の策として、 A列からD列だけでなく、E列以降もすべてまったく同じデータの場合でもいいです。 なお、ソートしたり、行の順番を変えるのはナシにしてください。 また、A列からD列のデータをくっつけるのも、できれば避けたいです。(それぞれの列を比較して異なる場合でも、くっつけたら同じになる場合もありうるので。)

  • Excelで行をあける

    以下のような例で、データ整理を自動的にExcel2000で行うにはどうすればよいでしょうか 元データ year firm 1990 A 1990 B 1991 B 1992 B 1990 C 1992 C 修正後データ year firm 1990 A 1991 A 1992 A 1990 B 1991 B 1992 B 1990 C 1991 C 1992 C 企業数が多いので、右クリックで行を追加すると時間がかかります 宜しくお願い致します

  • 【エクセル】行挿入で数式もいっしょにコピーしたい

    こんにちは。 エクセルで現金出納帳を作成しています。 例えば・・・   A列   B列 C列 D列 E列 1 日にち  科目 収入 支出 残高 2 10/1  光熱費    10000 3 10/2  給料  200000   190000 4 ・・・・・・ E列には=IF(E2="","",IF(AND(C3="",D3=""),"",E2+C3-D3)) という数式を入れています。 後からデータを足したい時(例えば3行目に挿入)に、行挿入をすると 数式もコピーされ、以下の行の数式も更新されるようにしたいのですが、どのようにしたら良いのでしょうか。 ご回答宜しくお願い致します。

  • エクセルで行を比較して結果を獲る

    宜しくお願いします。 A列、B列、C列それぞれの列に200~250行のデータ(データは6~7桁の数字)があります。 で...このデータを列ごとに比較して求めたいのが、 *A列にあって、B列とC列にないデータの値 *B列にあって、A列とC列にないデータの値 の2点の条件をクリアするデータのリストを作りたいのですが、(リストはD列でもどこでも構いません) どの様にしたら求めれるでしょうか? VBAはあまり自信がありませんが少しかじってますので、最悪はVBAでもいいので宜しくお願い致します。

  • エクセルで行挿入&コピー

    エクセルにて下記のように入力してあります。 A     B    C     D 111   111 222   111 次にC列の一行目にM001、D列の一行目にA001を入力した後(セルは2行目)に任意の行数を挿入し、さらにA,B列は一行目をコピー、C,D列は連番になるようにVBで作成するにはどうしたらいいでしょうか。 よろしくお願い致します。

  • excelで行挿入について

    excel97を使っているのですが、まず下の表を見てください。 行/列   A  B  C   1  メーカ      2  あ           3  い             4  合計           5  う         6  え           7  お              8  か                このような表があるのですが、行1~4で一つのグループなんです。 同じように  行4と行5の間に「メーカ」  行6と行7の間に「合計」 というふうに「メーカ」挿入、2行空けて「合計」挿入、「メーカ」挿入・・・を約千行分繰り返して 行/列  A  B  C  1  メーカ      2  あ      3  い      4  合計      5  メーカ      6  う      7  え      8  合計      9  メーカ     10  お     11  か     12  合計     このようにしたいのですが、簡単な方法は無いでしょうか?

専門家に質問してみよう