• ベストアンサー

「A1:A100までを1、A101:A200までを2・・・・」のような操作をA30000くらいまで行いたいのですが

エクセルでサイン波をアップサンプリングしたいのですが 具体的には{A1、A2、A3、A4、A5、A6・・・・}={1,2,3,4,3,2、・・・} A1:A100までが1、A101:A200までが2・・・・のように入力し、 _________________________________________________4・4・・・・・・4・4 ________________________________3・3・・・・・3・3__________________3・3・・・・・3・3 ________________2・2・・・・2・2_____________________________________________________2・2・2・2・2・ 1・1・・・・1・1 のようにするイメージです。(ただ、グラフにするわけではありません) オートフィルで行うとセル数が何万という数の場合、途方もなくなってしまうのでよろしくお願いします。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.3

A列に1,2,3,4,3,2とあってこれをB列に100セル単位にするというのであれば B1=INDIRECT("A"&INT((ROW()-1)/100+1)) でこれを下方にコピーしてください。

endzweck2
質問者

お礼

返信が遅くなり申し訳ありません。 教えていただいた方法で無事にできました。 ありがとうございます。

その他の回答 (3)

  • okdeath
  • ベストアンサー率28% (13/46)
回答No.4

こんにちわ。  cで解決済みなのに余計なお世話で申し訳ないですが、cで記述されるときはforなどのループを使用されていると思いますが、オートフィルなどで、例えばA列を0~100まで並べたものを、ループ回数に見立てると、分かりやすいんじゃないかと思います。  まあ、簡単なチェック程度にしか使いにくいとは思いますが、コンパイルエラーが出ないので思った数字が出なくて悩んだときはエクセルも慣れておくと意外と便利かも。  以上。余計なお世話でした。

endzweck2
質問者

お礼

ありがとうございます。 実験ができるようになり、データ収集の必要が出てきたので、エクセルはしっかり勉強したいと思います。 おっしゃる方法ですと確かにセルのイメージがしやすいですね。

  • okdeath
  • ベストアンサー率28% (13/46)
回答No.2

こんにちわ。 ↓の回等の式まちがってました。失礼 A1 : =INT(0.01*(ROW(A1)-1))+1 これでよろしく

endzweck2
質問者

お礼

ありがとうございます。100周期で番号を振ることができました。 しかし、 (1)111・・・・222・・・333・・・444・・・333・・・222 のように振る (2)任意の周期にする には少し工夫が要りそうなので、考えたのですが、よくわからなかったため結局Cで記述しました。

  • okdeath
  • ベストアンサー率28% (13/46)
回答No.1

こんにちわ。 これで合っているのか不明ですが、 必要な場所までコピペで張ってみてください。 =INT(0.01*(ROW($A$1)-1))+1

関連するQ&A

専門家に質問してみよう