• ベストアンサー

excelで、セル内に文字が入力される毎に行が自動挿入される仕組みを作りたいのですが…

excel2003を使用しております。 excelで、日々購入したものなどをメモ、管理しています。 その際、上からどんどん新しい項目を追加していって、 古い項目はどんどん下に伸びていく…というような入力の 仕方をしているのですが、いちいち新しい項目の 入力のために行を挿入するのはなかなか面倒です。 そこで、ひとつ新しい項目が追加されるごとに、 新たに行が自動的に挿入され、過去の項目は どんどん下にたまっていく…というような仕組みを 作りたいのですが、そのようなことは可能でしょうか? 文章がままならず大変申し訳ないのですが、 玄人の皆々様、是非アドバイスを宜しくお願いいたします。

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

  • ベストアンサー
  • kigoshi
  • ベストアンサー率46% (120/260)
回答No.2

VBAを使わないとできないように思います。 Private Sub Worksheet_Change(ByVal Target As Range) Dim cRow, cCol As Integer cRow = 2 '入力行 cCol = 1 '入力列 If Cells(cRow, cCol).Value <> "" Then Rows(cRow).Insert Shift:=xlDown End If End Sub シートタブを右クリックし[コードの表示]をクリック。 右側のエディタエリアに上記コードを貼り付けて下さい。 cRowとcColで指定したセルに何か入力があれば、cRowの行に1行挿入し それ以降を下段に繰り下げます。 上の例ですと、2行1列目、つまりA2セルに何か入力があると 2行目以降を繰り下げます。 cRowとcColを適宜変更して使用して下さい。

その他の回答 (2)

  • onlyrom
  • ベストアンサー率59% (228/384)
回答No.3

わざわざ行を挿入しなくても (1)今日のデータは、最後の行から入力 (2)今日のデータを全部入力し終わったら、     日付をキーにして降順で並び替える これでいいのではありませんか?

  • akina_line
  • ベストアンサー率34% (1124/3287)
回答No.1

こんにちは。  >いちいち新しい項目の入力のために行を挿入するのはなかなか面倒です。  シートを2つ使って、シート1は入力、シート2は保管としたらどうでしょう。  シート1の1行目にメモを入力してボタンを押すと、シート2に挿入されるようにします。  ボタンから実行するマクロは、シート1の1行目をコピーしてシート2に挿入する作業をマクロの記録で作成すれば良いと思います。 では。

関連するQ&A

  • Excelの行の挿入

    Office2000のExcelなんですが、行を挿入しようとすると挿入したい行の下をコピーしてしまいます。 例えば5行挿入したい時に左端の数字の部分を5行ドラッグして挿入を選ぼうとすると元にある5行がコピーされてしまいます。 突然なるようになってしまいました。 前は普通に挿入できたのですが・・・。 直し方ってありますか??

  • エクセルで自動的に行を挿入できますか?

    エクセルで、データ入力をしています。すべてのデータではないのですが、ほとんどのデータは同じ内容(コードNo.や日付など)を2行入力する必要があります。何か項目を追加して、その内容が1のときは同じ内容を次の行にコピーする、なんてできるのでしょうか?

  • EXCELで自動で行が挿入できますか?

    EXCEL2000を使用しています。 1.下記のようなプロジェクトリストを作成しています。 A列:プロジェクト B列:試験 C列:施設名 2.C列に施設名を入力すると、自動的に行の挿入ができるようにしたい。 3.試験が決定されると次々と施設が決まっていくため、予め、施設名を入力することができません。 4.その都度、行の挿入を行えばいいのかもしれませんが、複数の方が入力するため、自動的にできたらいいなと考えています。 厄介な質問で申し訳ありませんが、何かよい方法はありますでしょうか? どうぞよろしくお願いいたします。

  • Excelの行挿入で

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

  • エクセル行の挿入

    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   空白(行の挿入) -------------------------------------

  • 行の挿入で数式も自動的に挿入

    C1列に=SUM(A1:B1)を入力し、オートフィルを30行目までかけました。 3行目で行の挿入をした時に 自動的にC列に数式が入力されている状態 (上の行、又は下の行のコピーを挿入) にしたいのですがどうすればよろしいでしょうか? 行をコピー  → コピーしたセルの挿入 以外の方法はあるんでしょうか? よろしくお願い致します。

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

    EXCEL2002を使用しています。 行を挿入しようとしましたら、次のようなエラーメッセージがでました。 『データの消失を防ぐため、空白でないセルをワークシートの外にシフトすることはできません。 Ctrl+Endキーを押して最後の空白でないセルに移動し、そのセルとデータを削除、またはクリアしてください。 その後、セルA1を選択し、ブックを保存して最後のセルをリセットしてください。 または、データを新しい位置に移動し、もう一度行ってください』と。 データを入力した後、入力漏れに気がついたので、行の途中に入力漏れしたデータを挿入したいのですが、どのようにすれば、行の挿入ができるでしょうか。 (例えば、1行目から100行目までデータを入力した後に、10行目に新たにデータを挿入したい場合) よろしくご教示願います。 なお、OSはウィンドウズXPです。

  • エクセルでセルを挿入したい

    エクセルの「シート1」に、入荷表を作成していて、その「シート1」のセルに入力した商品名や数量が入力してあります。「シート2」に{シート名$セル$}の形でリンクするようにしてあります。 「シート1」の入力済の行の間(例えば5と6の間に1行追加)に1行追加したら、「シート2」もその行(5の下に1行追加)が追加されるようにはできないのでしょうか? 現状だと、「シート1」に追加すると、「シート2」は{$セル$}の番号が変動して見た目は変わらなくなります。

  • VBAでの行挿入について

    Excel VBAの条件に合った場合、行挿入&挿入した行のセルに特定の値を入力 VBA初心者です。Excel2007、XPを使用しています。 A列からCK列、平均100行程度の顧客データがあります。 このデータは列数は変わりませんが、行数は毎回異なり、 1行1顧客ではなく、同じ顧客で数行で入ることがあります。 しかしA列の顧客番号で判別できるようにはなっています。 目標は下記の点です。 「BC列」に値がある場合、 1行下へ空白行を挿入(できればA~X、Z~AA、AD~CKは1行上と同じ)。 但し挿入する位置は、顧客情報の一番下(1行の場合は2行目、2行の場合は3行目と)です。 挿入した行のY列に「ポイント利用」と入力。 挿入した行のAC列に「BC列の値」を入力。 挿入した行のAB列に「1」を入力。 「BJ列」に値がある場合、 1行下へ空白行を挿入(できればA~X、Z~AA、AD~CKは1行上と同じ)。 但し挿入する位置は、顧客情報の一番下(1行の場合は2行目、2行の場合は3行目と)です。 挿入した行のY列に「送料」と入力。 挿入した行のAC列に「BJ列の値」を入力。 挿入した行のAB列に「1」を入力。 以降に必要な処理はマクロで作成できたのですが、 その後に上記項目を手作業で処理しているのも限度があるので、 最初に挿入処理できればと思ってます。 分かりづらい説明だとは思いますが、 何卒ご教授頂きたくお願い致します。

  • エクセル行の自動挿入

    エクセルで行の自動挿入の方法を教えてください。 例えば、売上表を作成します。(下記のような)  工事日  顧客名  現場名  作業内容 受注金額 3月1日  ○Δ建築  ×■邸   ■   100,000 3月2日  ×■塗装  ●△邸   ▽    120,000 3月3日  □×建設  ▽○邸   ●    280,000     ↓      ↓      ↓     ↓     ↓ という表で、月によって60行の時もあれば20行という月もあります。 そして入力最終行に 受注金額の合計を出したいのです。 しかも、顧客名、作業内容はリスト入力になってます。 また、罫線も自動的に追加されるようになってます。 マクロは苦手なんですが、ご指導お願いします。 似たような、ご質問もありましたが、お願いします。

専門家に質問してみよう