- 締切済み
エクセルで空白セルにコピーする方法を教えてください
エクセルのデータ加工について質問です。 A1 60 A16 70 A19 50 というように、全部で1万行以上ふきそくにデータがあり、間の行は空白セルです。 それぞれ空白セル、A2からA15は60、A17からA18には70と上にある数値をコピーしたい時に、どのような数式、またはマクロを作成したらよいでしょうか。 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Nouble
- ベストアンサー率18% (330/1783)
お察しの通りこのやり方は 上書きされて式が書き換わり 前もって入力した式が そのセルから消えることを前提としています。 式自体が簡素なものであり、 またご存じの通り、 エクセルでは1つのセルに入力したものを 複数にコピーすることも非常に簡易ですから このやり方で式を例え消したとしても、 そう手間の掛かることにはならないように思いましたので ご提案させて頂きました。 尚、お望みとあらば、一切式を書き換えない法法もあります、 データ入力用の場所と読むための場所を分けて それぞれを使い分ければいい、 簡単に言えばそういう感じですね。 興味を持たれたならば更に詳しくご提案させて頂きますが如何でしょうか?
- Nouble
- ベストアンサー率18% (330/1783)
失礼しました 確認したとこと確かに式が違ってました もう解決されたとのことなのでなんですが、 Axに =IF(ROW()-1,Aw,"") と予め入れて頂ければいいと思います。 惑わすような情報を投稿して済みませんでした。
- Nouble
- ベストアンサー率18% (330/1783)
今回たまたまA2つからA15が空だから そこを数値で埋めたいだけですよね? ところでエクセルの絶対的な限界として そのセルに何らかの操作が加わらなければ 値を変えられない 自ら参照しない限り 関数では値は変わらない と言うのがありますから 数値を入力する前に予め Axに =IF(ROW()-1,"",Ax=Aw) (※注 xは任意の行位置を示す正数 wはxより1少ない数を示す) といれて 必要行数分をこの式で 埋め尽くしておいて 後からA列の任意の行に 数値をほり込めば そこ以下の上記関数が入っているA列のセルには数値が継承されて表記されますよ
お礼
早速ご回答いただきましてありがとうございます。 教えていただいた式を入れてみたのですが、なぜか出来ません。 私の作成方法に問題があるようです。 例えば、A2に下記式を入れるということでしょうか? =IF(ROW()-1,"",A2=A1) 取り急ぎ、フィルタで空白セルを表示させ、すぐ上のセルと同じにする式を入れたところ、問題は解決しました。
お礼
ご回答ありがとうございます。 いろいろな方法があるので勉強になります。 再び質問ですが、予め式をいれておいて、数値を後で入れるとのことですが、どうやって、数値を入れたらよいでしょうか。 貼り付けると、式も上書きされてしまうのでは・・・と。 方法がお分かりでしたら、ぜひ教えていただきたいです。 よろしくお願いします。