プロが教えるわが家の防犯対策術!

初歩的な質問ですいません。

4月1日  1
4月2日  5
4月5日  3




というような表をつくっています。
この飛んでいる日にち(この場合3日と4日)に行を(下記のように)挿入したいのですがどうしたらいいのでしょうか?

4月1日  1
4月2日  5
4月3日
4月4日
4月5日  3

お分かりになる方がいらっしゃったら、回答をお願いします!

A 回答 (3件)

こんにちは。



方法は、いくつもあると思いますが、

私なら、以下のような、挿入する日付のダミーを作ります。

4/1を入れて、オートフィルコピー

 A列  B列 C列 (ここでは、A列の20行目からになっています) 
4月1日    1  ←C列の数式は、=COUNTIF($A$1:$A$10,A20) 
4月2日    1   としますね。そうすると、数字が出てきます。
4月3日    0
4月4日    0
4月5日    1
4月6日    0
4月7日    0
4月8日    0
4月9日    0
4月10日    0
4月11日    0
4月12日    0


A列~C列で、C列を優先して昇順に並べ替えます。

そうすると、C列の「0」の行が上に、「1」が下に行きます。

そのC列「0」の部分までの行の、A列部分だけを、元のCSVでインポートしたデータの終わりの部分に貼り付けて、もう一度、インポートしたデータ部分のA列~B列の範囲で並べ替えればよいです。

後で、不要なデータは削除します。
    • good
    • 0
この回答へのお礼

丁寧なご回答ありがとうございました!
エクセルって本当に難しい・・・。
頑張ります!!

お礼日時:2008/05/16 13:18

VBAを使えば簡単なのですが、関数を使う方法としては・・・



VLOOKUP関数を使います。

抜けのない日付のリスト(既存でも新規でも)を用意し、

抜け無し日付リストのそれぞれの日付を「検索値」、
飛んでいる日付と値の表を「範囲」、
「列番号」を2、
「検索の型」をFALSEとして、
抜け無し日付リストの右隣(右隣じゃなくてもいいけど)のセルに、VLOOKUP関数を書きます。

「検索の型」をFALSEにしているので、日付が抜けている場合は、#N/Aが表示されます。

そこで、更に右隣(右隣じゃなくてもいいけど)に、
=IF(ISERROR(左隣のセル),"",左隣のセル)
という関数を書きます。

そして、その結果をコピーし、「形式を選択して貼り付け」で値を貼り付けます。
    • good
    • 0
この回答へのお礼

早速ご回答ありがとうございました!
初心者なので、ちょっとできるかわかならないのですが・・・頑張ります!!

お礼日時:2008/05/16 13:18

イマイチ状況が分りませんが



・4/5とその下の2行を選択
・その状態で右クリックし、挿入を選択
・4/2のセルを選択し
・セルの右下に表れる小さな黒四角にマウスカーソルを合わせ
・下方2セル分ドラグする

と言うことなのでしょうか?

行挿入の仕方が分らないのか?
日付の簡単なうめ方が分らないのか?
どんな感じなのでしょうか?

この回答への補足

わかりにくくて申し訳ありません・・・。

このデータはあるソフトの検索結果をCSVではきだしたものなのですが・・・。
上記の例でいくと、右側の数値が0の場合だと日付がつめられたデータがはきだされてきます。
そこにつめられてしまった日付の分の行を自動的に挿入したいのです。

実は右側の数値を他のシートに貼り付けたいのですが、そちらのシートは1か月分の行ができているので、そのまま貼り付けてしまうととんでいる日付の分だけ下に空白ができてしまうので・・・。
とんでいる日付に行を挿入できれば、一発コピペですむのでとても楽なのです。

補足日時:2008/05/16 12:00
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!