• ベストアンサー

関数 連続データの生成

=IF(DAY(D$2)=1,D$2,"")という関数を連続で100セル(行)にオートフィルしたいと考えています。 100セルを選択してコピペではなく、連続データ生成などで行う方法はありますでしょうか? 大変お手数ですが、よろしくお願いいたします。

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

  • ベストアンサー
  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.2

> =IF(DAY(D$2)=1,D$2,"")という関数を連続で100セル(行)にオートフィルしたいと考えています。 > 100セルを選択してコピペではなく、連続データ生成などで行う方法はありますでしょうか? オートフィルではありませんが、・・・ 次のような方法もあります。 1) 「名前ボックス」に「E2:CW2」と入力して「Enter」キーを押して範囲選択します。 2) 「数式バー」にその数式を入力し、「Ctrl」キーを押しながら「Enter」キーを押すと、連続した数式が入力されます。 下記URLのページの「ワザ1 選択範囲に同じデータを一括して入力する」の項をご参照下さい。 すぐに使えるエクセル入力テク「10 ワザ」 達人編 http://www.microsoft.com/japan/athome/magazine/office/special/0904_2/02.aspx

その他の回答 (3)

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.4

仮に、D3からD102まで埋めるとします。 シート左上を見ると今どこのセルが選択されているか A3とかD100とかAH1と、いった感じに 表示されている欄があると思います。 そこをクリックしてD3:D102と入力してください。 次に、 お望みの式をタイプして コントロールキーを押しながらエンターキーを押してください。 ここでのポイントは、 タイプした後は、通常 単なるエンターのみを押して 入力を終えるところを、 このエンターを押すタイミングで コントロールキーをも押しておくことです。 こうすることにより 選択範囲全域に、フィルされた内容を 一気に書き込みにいってくれます。 オートフィルだと状態が連続いた範囲までしか コピーされないので なかなかに確実性が低いですが、 これだと問答無用に書きにいくので 逆に注意が必要な位ですが、 容赦なし! 確実に書きにいってくれます。 ところで、 書き込みに対し確認のメッセージか Excelでは出るときがありますが、 当然、上記の内容を行うに当たっても こういったメッセージが同様に出ることがあります。 こういったメッセージに対し キャンセルするような選択をすると、 当たり前ですが 書き込みにいったものの、書き込まれず終わることになります。 当たり前ですね。 因みに、関数では 参照されることで他のセルの内容に 影響を与えることはできても 他のセルを書き換えることはできません。 ましてや、参照関係すらないセルを変えることなど、 ボタンを押さないと動かない方式の電卓に 触れずに計算させようとしているようなもの。 無理も無理 超能力者じゃあるまいし 不可能です。 他のセルの値が変わるのは あらかじめ参照する仕方を 値を変えたい方に指令しているからで 他セルから強制的に書き換えている訳ではありません。 値が変わるセル自身が自主的に 前持った指示に従い 他セルの内容を見て自らを変えているのです。 関数で他のセルの内容を強制的に書き換えてデータを生成 と、言うとは 不可能なのでお諦めください。。 なお、VBAでは意図も簡単にできます。 如何でしょうか? 最初誰しも思う内容だと思いますが できそうでできないんですよね。 お役に立てていたならば幸いです。 蛇足ですが、 他を変えようとするのでは成せないことがある。 と、言ういい教訓を、含んでいると思いますよ。

回答No.3

あまり、見かけないけど名前ボックス応用編。 D3セルに数式が書かれており、D3セルを選択しているとします。 (D3セルがアクティブセルであるとする) 名前ボックスに RC[99] と入力し、[Shift]押しつつ[Enter] これでD3セルから右方向へ、100個のセルが選択できます(D3:CY3) [F2]キーで数式の編集状態にし、[Ctrl]+[Enter]で確定です

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>行う方法はありますでしょうか? 実際に出来る方法、よく利用される方法としては次のようにします。 いま数式を記入したいのを例えばE列だとすると、その隣の列のたとえばD2からD100セルなどに「何か」が記入してあって、そこでE2に所定の数式を記入、E2セルを選択してE2セル右下のちょっと小さい■にマウスカーソルを合わせ、そこでWクリックします。 隣の列ならどっちでもイイので、たとえばF2からF100に「何か」が記入してあるのでも、もちろんOKです。 #Wクリックオートフィルの添え木とするためF2:F100に「何か」を記入するため、 名前ボックス(数式バーの左端の通常A1などの表示が出ている箱)の中にF2:F100を記入してEnterし、何か(たとえば数字のゼロとか)を記入してコントロールキーを押しながらEnterで一斉入力するといった手管もあります。 もっともこれを知っていれば、同じ方法でD2:D100を先に一手で選択しておいてからD2に式を記入、コントロールキーを押しながらEnterで一斉入力してしまったほうが簡単ですが。 #参考:いろいろ書かれるとワケ判らなくなるならスルーして下さい。 ご質問に書かれている「その式」では、それを例えば2行から100行にコピーしても通常はほとんど意味の無い数式です。 でも、たとえばE2セルに =IF(DAY(D2)=1,D2,"") と記入、先にE2:E7ぐらいまでとりあえずコピーしておきます。 D2から始めてD3、D4…と数字を記入、D7まで記入した後D8に数字を記入すると、まだコピーしていないE8に自動で数式が投入されます。(エクセルの標準設定では。) 事前にイチイチ下端まで数式を埋めておく必要はありません。

関連するQ&A

専門家に質問してみよう