Excelで大量データの指定箇所に行を挿入する方法

このQ&Aのポイント
  • Excelで大量のデータを扱う際に、特定の箇所に行を挿入する方法について解説します。
  • 具体的な作業手順や注意点を紹介するので、効率的なデータ処理が可能です。
  • また、大量のデータを正確に処理するための裏技にも触れます。
回答を見る
  • ベストアンサー

Excel 大量データの指定箇所に行を挿入するには??

会社でExcel作業中なのですが、、、ど~してもわからず 悪戦苦闘しています(>_<) どなたか助けて下さい! やりたいことはこんな感じです。 今の段階では得意先ごとにA項目からG項目まで並んでいます。 最終的には、得意先ごとに 「C・D項目合計」「E・F項目合計」「A・B・C・D・E・F・G項目合計」 という行を追加で挿入し、それぞれの合計値を出したいのです。 良い方法が思いつかなかったので、右クリックして 挿入を延々と繰り返し、その後計算式をコピーして入れていましたが データが5万件ほどあり(ブックが別れています)、永遠に 終わりそうもありません。。 どなたか解決法をご存知でしたら教えて下さい!宜しくお願い致しますm(__)m ☆作業前↓----------------------- A得意先 A項目            10        B項目            20 C項目            30 D項目            35 E項目            15 F項目            25 G項目              10 B得意先 A項目            10        B項目            20 C項目            30 D項目            35 E項目            15 F項目            25 G項目              10 ☆作業後↓----------------------- A得意先 A項目            10 B項目            20 C項目            30 D項目            35 C・D項目合計        65 E項目            15 F項目            25 E・F項目合計          40 G項目              10 A・B・C・D・E・F・G項目合計  145 B得意先 A項目            10 B項目            20 C項目            30 D項目            35 C・D項目合計        65 E項目            15 F項目            25 E・F項目合計         40 G項目              10 A・B・C・D・E・F・G項目合計  145

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.8

sakura0411さん、こんにちは。merlionXXです。 今日はポカポカで春のようです。(東京は) では、「ラジオスポット計」行の1行下の項目が「交通」じゃない場合、新たに行を追加し、交通という項目にすればいいんですね? 単純にその作業を行なうだけでしたらこれを試してください。 Sub 交通行挿入() Dim t As Date '変数tは日付時間と宣言 Dim k As Range '変数kは範囲と宣言 t = Now() '現在時間をtに代入 With ActiveSheet 'アクティブなシートにおいて Set k = .Range("B1") 'とりあえず項目列のセルB1をkと定義する Do Until k.Value = "" And k.Offset(1, 0).Value = "" '項目列に2行連続で空白があったら中止 Set k = k.Offset(1, 0) 'kの一つ下のセルをあたらにkと定義する If Trim(k.Value) = "ラジオスポット計" Then 'kがラジオスポット計なら If Trim(k.Offset(1, 0).Value) <> "交通" Then 'もしkの下が「交通」でなければ k.Offset(1, 0).EntireRow.Insert Shift:=xlDown 'kの下に1行挿入 k.Offset(1, 0).Value = " 交通" '項目を入れる .Range(k.Offset(1, 1), k.Offset(1, 35)).Value = 0 'その行の値を0とする End If End If Loop '繰り返す End With MsgBox UCase(Environ("UserName")) & "さん、作業所要時間は、" & Format(Now() - t, "hh時間mm分ss秒") & " でした。。" '今の時間からtを引いて作業時間を求めユーザーに案内 End Sub さきほどの集計作業も同時に行なうのでしたら、こちらを Sub 集計および交通行補正() Dim t As Date '変数tは日付時間と宣言 Dim k As Range '変数kは範囲と宣言 t = Now() '現在時間をtに代入 With ActiveSheet 'アクティブなシートにおいて Set k = .Range("B1") 'とりあえず項目列のセルB1をkと定義する Do Until k.Value = "" And k.Offset(1, 0).Value = "" '項目列に2行連続で空白があったら中止 Application.StatusBar = k.Address 'ステータスバーにkのアドレス表示 Set k = k.Offset(1, 0) 'kの一つ下のセルをあたらにkと定義する If Trim(k.Value) = "テレビスポット計" Then 'kがテレビスポット計なら k.Offset(1, 0).EntireRow.Insert Shift:=xlDown 'kの下に1行挿入 k.Offset(1, 0).Value = " テレビ(タイム・スポット計)" '項目を入れる .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" 'その行に式を挿入 End If If Trim(k.Value) = "ラジオスポット計" Then 'kがラジオスポット計なら If Trim(k.Offset(1, 0).Value) <> "交通" Then 'kの下が交通でなければ k.Offset(1, 0).EntireRow.Insert Shift:=xlDown 'kの下に1行挿入 k.Offset(1, 0).Value = " 交通" '項目を入れる .Range(k.Offset(1, 1), k.Offset(1, 35)).Value = 0 'その行の値を0とする End If k.Offset(1, 0).EntireRow.Insert Shift:=xlDown 'kの下に1行挿入 k.Offset(1, 0).Value = " ラジオ(タイム・スポット計)" '項目を入れる .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" 'その行に式を挿入 End If If Trim(k.Value) = "交通" Then 'kが交通なら k.Offset(1, 0).EntireRow.Insert Shift:=xlDown 'kの下に1行挿入 k.Offset(1, 0).Value = "合計" '項目を入れる .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-9]C:R[-1]C)" 'その行に式を挿入 End If Loop '繰り返す End With MsgBox UCase(Environ("UserName")) & "さん、作業所要時間は、" & Format(Now() - t, "hh時間mm分ss秒") & " でした。。" '今の時間からtを引いて作業時間を求めユーザーに案内 Application.StatusBar = "" 'ステータスバー表示を消去 End Sub マクロコードの各行が何をしているのかコメントを付しておきました。('でコメントアウトしてますからそのままコピペしても大丈夫ですよ。)

sakura0411
質問者

お礼

merlionXXさんへ こんにちは!sakura0411です。 早速のお返事どうも有難うございました! 今日は東京はとても暖かくて気持ちの良い日ですね♪ (お互い東京に住んでいるんですネ) マクロの方実行してみました。今回も完璧です! しかもユーザー名が出たり、所要時間が出たり、バージョンアップしてますねっ?? 何が書いてるのかわからなかったマクロも、merlionXXさんが コメントして下さったおかげでなんとなく理解できました♪ 頑張って勉強せねば! 本当に有難うございました。 当初は2週間以上かかるのでは…と思っていた作業も これなら2日とかでできちゃいそうです。 どうも有難うございました。大感謝です☆ 取り急ぎお礼まで o(*^_^*)o

その他の回答 (7)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.7

こんばんは、merlionXXです。 > A~Gの全て(9項目)の合計ではなくて、 > A~Gの7項目(C・D項目合計とE・F項目合計の行は除く)の > 合計にするにはどうすればよいのでしょうか?? え?そうなっていませんか? 使用したSUBTOTAL関数は途中のSUBTOTALを自動的に対象から除外しています。ですからC11セルは=SUBTOTAL(9,C2:C10)となっていると思いますが、C2~C10の合計ではなく、途中のSUBTOTAL行は抜いて計算しているはずですよ。確認願います。 > 作業前にG項目がなく、マクロで追加したい場合には よく意味がわかりません。 「交通」という項目がないデータに「交通」の行を追加するのですか? ではそこのデータはどこから持ってくるのですか?

sakura0411
質問者

補足

merlionXXさんへ おはようございます!sakura0411です。 色々ご迷惑をおかけしてスミマセン。。 > 使用したSUBTOTAL関数は途中のSUBTOTALを自動的に対象から除外しています。ですからC11セルは=SUBTOTAL(9,C2:C10) > となっていると思いますが、C2~C10の合計ではなく、途中のSUBTOTAL行は抜いて計算しているはずですよ。確認願います。 上記の件、ちゃんと計算されていました。SUBTOTALで全部計算されてしまうものと勘違いしてしまいました。 大変失礼しました、ごめんなさいっm(__)m >> 作業前にG項目がなく、マクロで追加したい場合には > > よく意味がわかりません。 > 「交通」という項目がないデータに「交通」の行を追加するのですか? > ではそこのデータはどこから持ってくるのですか? これも言葉が足りずにスミマセン(汗) merlionXXさんのおっしゃる通り、現在「交通」という項目がないデータに 「交通」という行を追加したいのです。 かなり昔のデータになると、「交通」の項目がなく、数値も紙のみで 最終的には手入力しなければいけないことになってしまったんです。。(ToT) なので、データ入力は手作業でやるとしても、行の挿入の部分は 自動でできないものかと思いまして。。 自分でやってみたんですが、エラーになってしまうしよくわからなくて(汗) そんなに急ぎではないので、もし可能であれば教えて頂けたら嬉しいです。 重ね重ね甘えてしまって申し訳ありませんが、どうぞ宜しくお願い致します。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.6

すみません、訂正です。 Sub test03() Dim k As Range With ActiveSheet Set k = .Range("B1") Do Until k.Value = "" And k.Offset(1, 0).Value = "" Set k = k.Offset(1, 0) If Trim(k.Value) = "テレビスポット計" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = " テレビ(タイム・スポット計)" .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If Trim(k.Value) = "ラジオスポット計" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = " ラジオ(タイム・スポット計)" .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If Trim(k.Value) = "交通" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "合計" .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-9]C:R[-1]C)" End If Loop End With End Sub

sakura0411
質問者

補足

スミマセン、、、お忙しいとは存じますが 追加で質問させていただいてもよろしいですか?? 最後の行に合計値を入れる箇所なのですが、 A~Gの全て(9項目)の合計ではなくて、 A~Gの7項目(C・D項目合計とE・F項目合計の行は除く)の 合計にするにはどうすればよいのでしょうか?? 自分でやろうと思ったのですが、マクロがエラーになってしまい 上手く行かず・・・。 手作業でもできるのですが、せっかくなので教えて頂ければと。 甘えてしまってすみませんが、教えて頂けると嬉しいです。 宜しくお願いします☆ それと…これ、追加質問になってしまうのですが、 作業前にG項目がなく、マクロで追加したい場合には どうすればよいのでしょうか・・・??? (そういうデータがたくさん出て来てしまって困ってます(ノ_・、) お時間のある時で構わないので、ご回答お待ちしています。 宜しくお願いします! ☆作業前↓----------------------- A得意先 A項目            10          B項目            20 C項目            30 D項目            35 E項目            15 F項目            25 ☆作業後↓----------------------- A得意先 A項目            10 B項目            20 C項目            30 D項目            35 C・D項目合計        65 E項目            15 F項目            25 E・F項目合計          40 G項目              10 A・B・C・D・E・F・G項目合計 145

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.5

sakura0411さん、こんにちは。merlionXXです。 項目名の前にスペースが入っていたのですね。 では、データの項目名はいじらず、以下のマクロを実行してみてください。 今度は大丈夫かな。 Sub test02() Dim k As Range With ActiveSheet Set k = .Range("B1") Do Until k.Value = "" And k.Offset(1, 0).Value = "" Set k = k.Offset(1, 0) If Trim(k.Value) = "テレビスポット計" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "テレビ(タイム・スポット計)" .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If Trim(k.Value) = "ラジオスポット計" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "ラジオ(タイム・スポット計)" .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If Trim(k.Value) = "交通" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "合計" .Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-9]C:R[-1]C)" End If Loop End With End Sub

sakura0411
質問者

お礼

merlionXXさんへ 早速のご回答ありがとうございました♪ 素晴らしすぎます!完璧です!!天才です!! どうやったらこういうマクロが作れるのかが まだまだ疑問ですが。。。 頑張って勉強しなくては。。 本当にありがとうございました。 これで作業が大幅に軽減できます。大感謝です☆☆☆

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.4

追伸 データが入ってるシートを開いてる状態でやってください。

sakura0411
質問者

補足

回答ありがとうございました(*^_^*) で、ですが、セキュリティのレベルも「低」にしてあるのに 全くマクロが反応しません。。エラーになるのならともかく、 どこか間違ってるんでしょうか…?? 色々トライしてみたのですが、原因はさっぱりわからずです。 自分で書き換えたのがこのマクロ↓です。。 もし間違いがあれば指摘していただけないでしょうか。。 お手数をおかけしますが、どうぞ宜しくお願いします!!! Sub test02() Dim k As Range With ActiveSheet Set k = .Range("B1") Do Until k.Value = "" And k.Offset(1, 0).Value = "" Set k = k.Offset(1, 0) If Trim(k.Value) = " テレビスポット計" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = " テレビ(タイム・スポット計)" Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If Trim(k.Value) = " ラジオスポット計" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = " ラジオ(タイム・スポット計)" Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If Trim(k.Value) = " 交通" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "合計" Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-9]C:R[-1]C)" End If Loop End With End Sub

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.3

エクセルの、メニューから、「ツール」、「マクロ」、「セキュリティ」でマクロのセキュリティレベルを見てください。 「高」になっていると作動しません。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

> 顧客の名前がA列に入っており、B列に項目名、C列には2005年1月の数値、D列には2005年2月の数値…というふうに、AK列までデータが入っています。。 #1のmerlionXXです。 なるほど巨大なデータですね。マクロしか方法がないでしょう。 確認ですが、1行目は項目名で、データは2行目からですね? 顧客と顧客の間に空白行は無いか、あっても1行ですね? B列の項目名の途中に2行以上の空白行はないですね? 列はAK列まででいいんですね? 上記でよければ、必ずバックアップをとってから以下の手順をためしてみてください。 わたしのマクロのコードで項目名を正しいものに直したら 1.AltキーとF11キーを同時に押してVisualBasicEditorを呼び出します。 2.メニューから挿入、標準モジュールで、出てきたコードウィンド(右側の白い広い部分)に以下のコードをコピペします。 Sub test02() Dim k As Range With ActiveSheet Set k = .Range("B1") Do Until k.Value = "" And k.Offset(1, 0).Value = "" Set k = k.Offset(1, 0) If Trim(k.Value) = "D項目" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "CD項目合計" Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If Trim(k.Value) = "F項目" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "EF項目合計" Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If Trim(k.Value) = "G項目" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "ABCDEFG項目合計" Range(k.Offset(1, 1), k.Offset(1, 35)).FormulaR1C1 = "=SUBTOTAL(9,R[-9]C:R[-1]C)" End If Loop End With End Sub 3.Alt+F11キーでワークシートへもどります。 4.メニューから、ツール、マクロ、マクロで出てきたマクロ名(test02)を選択して実行します。

sakura0411
質問者

補足

ありがとうございます♪ でも…マクロは作れたのに、実行ボタンを押しても何も反応しません(汗) データが入ってるシートを開いてる状態だとダメなのかな?と思い 新規のワークシートで同じ事を試みましたが、反応しませんでした(ToT) 項目名は変更しましたし、↓の確認事項も問題はないのですが。。 >確認ですが、1行目は項目名で、データは2行目からですね?→はい >顧客と顧客の間に空白行は無いか、あっても1行ですね?→ないです >B列の項目名の途中に2行以上の空白行はないですね?→ないです >列はAK列まででいいんですね?→はい マクロを実行する際に、何か設定?条件などはあるんでしょうか? 急いでいないので、お暇な時にでも教えて下さい。 お手数をおかけしますが、どうぞ宜しくお願い致します!

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

すべてのデータをA列とB列だけの縦でもっているのですか? 普通は顧客ごとに各項目を横に持ちませんか? これは関数でどうこうするようなレベルじゃないですね。 項目名称がA列、数値がB列、お書きになってるとおりだとして、かならずバックアップを取ってから標準モジュールに以下のマクロを適宜修正(項目名称)したものを貼ってためしてみてください。 Sub test01() Dim k As Range With ActiveSheet Set k = .Range("A1") Do Until k.Value = "" And k.Offset(1, 0).Value = "" Set k = k.Offset(1, 0) If k.Value Like "*D項目" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "CD項目合計" k.Offset(1, 1).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If k.Value Like "*F項目" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "EF項目合計" k.Offset(1, 1).FormulaR1C1 = "=SUBTOTAL(9,R[-2]C:R[-1]C)" End If If k.Value Like "*G項目" Then k.Offset(1, 0).EntireRow.Insert Shift:=xlDown k.Offset(1, 0).Value = "ABCDEFG項目合計" k.Offset(1, 1).FormulaR1C1 = "=SUBTOTAL(9,R[-9]C:R[-1]C)" End If Loop End With End Sub

sakura0411
質問者

補足

言葉足らずでスミマセン(ToT) 顧客の名前がA列に入っており、B列に項目名、C列には2005年1月の数値、D列には2005年2月の数値…というふうに、AK列までデータが入っています。。 やはり、マクロでの解決となるんですね。勉強しなくては。。(-_-;)

関連するQ&A

  • Excelでのデータ抽出方法

    お世話になります。Excelで下記のような同じ得意先が複数存在するリストから 得意先が重複しないようにリスト化(得意先1つにつき1行)することは可能でしょうか? レコード数が2万件近くあり、手作業では大変で困っております。 また、Excelで無理であればAccessに取り込んで作業をすることも可能です。 (最終的にはエクセルファイルとして出力希望です) 何かよい方法をご存知の方がいらっしゃいましたらご指導願います。 よろしくお願いいたします。 【抽出前】 項目  得意先名 01    A 02    B 03    B 04    B 05    C 06    C 07    D 08    E 09    E 10    F 【抽出後】 項目  得意先名 01    A 02    B 03    C 04    D 05    E 06    F

  • 行を超えて範囲指定したい。

    エクセル2000でA1:G1とするとA1-A6,B1-B6,C1-C6,D1-D6,E1-E6,F1-F6,G1-G6が範囲指定できます。 行を超えて A1-A6,D1-D6,G1-G6,J1-J6というように3行おきに範囲指定する方法を教えてください。

  • Excel 2007 1列のデータを1行にしたい

    いつもお世話になっています. 早速質問なんですが A B C D E F G 1 あ 2 い 3 う 4 え 5 お 6 か のような あ~か を A B C D E F G 1 あ い う え お か 2  3  4  5  6  みたいにしたいのですがやり方が分かりません. 2*2以上のデータを入れ替える方法はWeb上にあるのですが,1列のみを1行に変換する方法が載ってません.誰か教えてください.宜しくお願い致します.

  • エクセル:未入力の行は合計を非表示にしたいのですが。

    未入力の行は合計を非表示にしたいのですが。教えていただけませんか? - A B C D E F(残高計)*Aは仕入でB~Eは売上個数です。 1 9 1 2 1 1 4(=A1-B1-C1-D1-E1)になっています。 2 8 1 2 1 1 7(=F1+A2-B2-C2-D2-E2)です。 3 - - - - - 7(G2をコピーすると未入力行には7が。。) 4 - - - - - 7(これを表示しない方法はありますか?) 5 - - - - - 7(すみません。教えてください。。。) 分かりにくいかもしれませんが、何卒、よろしくお願いもうしあげます♪♪。

  • Excelで2箇所のデータを1箇所にまとめる方法は

    2箇所にあるデータを1つにまとめるにはExcelの機能で簡単にする方法はありますか? 例えば シート1 A B C D 1 氏名 12月 2 申告 未申 ク 3 A 0 1 1 4 B 0 1 0 5 D 1 0 0 シート2 A B C D E F G 1 氏名 1月 2月 2 申告 未申 ク 申告 未申 ク 3 A 0 1 0 2 0 0 4 C 0 1 0 0 1 0 5 D 0 0 0 0 2 0 これの合計をシート3にまとめるには、Excelのどのような機能でプログラムで簡単にまとめられますか? シート3 A B C D 1 氏名 2 申告 未申告 ク 3 A 4 B 5 C 6 D B列の申告、C列の未申告、D列のクにExcelの機能を使って簡単に合計をまとめるのを作成したいです。シート1と2にはシート1と2に同じ人もいればシート1にしかいない人、シート2にしかいない人がいます。ただ、データは同じです。シート1は12月のデータ、シート2には1月、2月のデータがあります。シート1にはA1は氏名、A3はA,A4はC,A5はD,、B2は申告、B3は0,B4は0,C1は12月、C2は未申告、C3は1,C4は1です。他のシートも同じように見てください。ズレテ表示されてしまっているかもしれません。実際にはシート2には6月までのデータもまとめたいです。宜しくお願いします。Excelの検索機能等を使ってシート3にシート1と2のデータをまとめる事が出来ますか?回答宜しくお願いします。 シート3に計算式を入れます。例えばB3にSUM=(sheet1!,B3)(sheet2!,B3,E3) シート3のB4にSUM=(sheet1!,B4)(sheet2!,B4,E4) B5にSUM=(sheet1!,B5)(sheet2!,B4,E5)を入れる方法だとシート1とシート2に違った人がいる為に下に向かって同じ式をコピーしていくのが出来なくて困っています。上記の式だとコピーしただけだから職場の人にも駄目だと言われています。他のやり方が分からないので誰か教えて下さい。宜しくお願いします。

  • 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

  • Excelで、行の組み換えについて

    A列からG列までデータが入っているリストがあるのですが、 例えば、1行目から50行目までと、51行目から100行目までを交互に組み入れるには どのようにすればよいでしょうか。   A B C D E F G 1 2 3 ・ ・ ・ 51 52 53 ・ ・ ・ といったものを、   A B C D E F G 1 51 2 52 3 53 ・ ・ ・ のようにしたいのですが、一気に操作できる方法があれば 教えていただきたく、よろしくお願いいたします。

  • 秀丸エディタで、行の後ろに倍数の連番を挿入したい

    行の後ろに3の倍数を挿入する場合、 a b c d e f のような行を a3 b6 c9 d12 e15 f18 のように3の倍数を後ろに挿入したいです。 置換または、マクロを使ってこのようなことは可能でしょうか?

  • エクセルで1行に1データ以上入力されたらエラー表示

    A1からG1の行で7つのセルがありますが、 その行で1データ以上入れたらエラー表示させることは出来ますか? 例えば A1にデータを入れたらB1・C1・D1・E1・F1・G1にはデータは入れられない。 D1にデータを入れたらA1・B1・C1・E1・F1・G1にはデータは入れられない。 という感じです。 どうぞよろしくお願いします。

  • Excelで複数行を1行にするマクロについて

    Excel2000で3行を繰り返し、1つの行にまとめていくマクロの書き方についてご教授ください。 例えば下記のような並びの時、 A B C D E F G H I ..... マクロを使って、 A B C D E F G H I ...... のようにしたいと考えています。

専門家に質問してみよう