• ベストアンサー

Excelにおけるコピー

こんにちは Excelの使用方法で質問があります   A B C 1 a 2 b 3 c 4 d 5 ...(以下2000行にデータが続きます) とExcelで入力されているとします この状態から   A B C 1 a 2 b  a 3 c  b  a 4 d  c  b 5 ... としたいのですがやり方がよくわかりません ROW関数やCOLUMN関数などを使うのかな?というところまでは見当がついているのですが そこから先がよくわかっていません わかる方いらしましたら,ご指導の方お願いいたします

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

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

ん? んじゃ,B2セルに =IF(OFFSET(B2,-1,-1)="","",OFFSET(B2,-1,-1)) とか =INDEX(A:A,ROW()-1)&"" とか記入して,右に下にコピーして下さい。 ご相談で掲示の4行目が「わざわざbで終わってる」ので,その先は無いご相談だと判断しましたよ。 右側にもっと延々続けたいと,ホントに聞きたかった事がご相談に手抜きして書かれてなかったワケですね。

hyappydesugn
質問者

お礼

この度は様々なお答えを頂きありがとうございました 今後,再度お世話になることもあるかと思いますが 次回はしっかりと意図が伝わるように 努力していきたいと思います この度はありがとうございました

hyappydesugn
質問者

補足

すいませんでした。 今後,質問する際には気を付けます

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

  • ify620
  • ベストアンサー率28% (228/794)
回答No.4

回答No.3です。 解説が、一個ずれました。 ごめんなさい。 添付図を比べて、間違いを修正してください。

hyappydesugn
質問者

お礼

様々な方法を提案して頂きありがとうございました Excelも様々な機能があってまだまだ使い切れませんが 今後使えるように努力していきます

全文を見る
すると、全ての回答が全文表示されます。
  • ify620
  • ベストアンサー率28% (228/794)
回答No.3

初心者の手法です。 (*^_^*) まず、A(B)列をc列以降に必要なだけコピーします。 次に、1行目にA~C、…と必要なだけ項目を打ちます。どちらが先でも良いのです。 三番目に、b2にカーソルを置いて、セルを挿入して、全体を「下方向にシフト」させるのです。 四番目に、c2~c3を範囲指定してセルを挿入して、全体を「下方向にシフト」2個させるのです。 五番目にd2~d4を範囲指定してセルを挿入して、全体を「下方向にシフト」3個させるのです。 六番目に、… 七番目に、… などでは、いかがですか?(*^_^*)/~ ~

全文を見る
すると、全ての回答が全文表示されます。
  • srafp
  • ベストアンサー率56% (2185/3855)
回答No.2

> ROW関数やCOLUMN関数などを使うのかな?というところまでは見当がついているのですが ご質問の内容を勘違いしていたらスイマセン。 その関数を使わなくても出来そうな気がいたしますが? >   A B C > 1 a > 2 b > 3 c > 4 d > 5 ...(以下2000行にデータが続きます) ここの意味[内容]が一寸判りません。 ご質問文を拝読すると、データは入力済みと読めますが、手入力ですか? それとも「a」から順番に何らかのルールに基づいた文字を自動作成ですか? > この状態から >   A B C > 1 a > 2 b  a > 3 c  b  a > 4 d  c  b この配列を見ると、『常に左斜め1つ上のセルの値を持って来る』と言うルールが想定されます。 それでいいのであれば、 ・セルB2に =A1 と入力 ・入力後、セルB2に入力した計算式をセルB3にコピペするか、セルB3に =A2 と入力 ・セルC3に =B2 と入力 ・入力後、セルC2とセルC3をアクティブにして、2000行までコピー 斯様な方法でよいのでは??

hyappydesugn
質問者

お礼

様々な方法を教えて頂きありがとうございます 未熟なことが多々露呈してしまい申し訳ありません 今後,努力していきます

hyappydesugn
質問者

補足

データは手入力です。 現在はA列1行から2000行までデータが手入力で入力されており このデータをA列からALL列(約1000列目)まで『常に左斜め1つ上のセルの値を持って来る』のルールに従ってデータをA列に入力したしたデータをALL列まで行っていきたいと思っています

全文を見る
すると、全ての回答が全文表示されます。
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

ふつーに, 手順: A1からA1000をコピー B2に貼り付け C3に貼り付け とするだけと思いますが。 「数式」にしたいのでしたら B2に =A1 と記入し,リスト下端までコピー C3に =B2 と記入し,リスト下端までコピー とかで十分です。

hyappydesugn
質問者

お礼

様々なご指摘ありがとうございます しっかりと人様に伝わるような文章を 心がけていきたいと思います

hyappydesugn
質問者

補足

今までそのような方法で行っていたのですが 今回この繰り返し回数が1000列まで行うために この動作コピー⇒貼り付けが約1000回必要になります そこで,なにか関数的に出来ないか考えています

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセル関数を教えて下さい。

    エクセルの数式を教えて下さい。三角関数を全く忘れていますのでよろしくお願 いします。 図形とエクセルの表を画像でアップしました。  Aは角度  B/C/Dは長さ   一行目   セルA1に 任意の角度を入力 B1に 任意の長さを入力するとC1には C の長さの値が出るエクセル関数 D1には Dの長さの値が出るエクセル関数  2行目も同じ様に  A2に 角度  C2に長さを 任意に入力すると  B2とD2に 長さが出てくる エクセル関数   3行目も同じ様に  A3に角度 D3に長さを 任意入力すると  B3とC3に 長さが出てくるエクセル関数  4行目  B4とC4に 長さを任意入力すると  A4に角度 D4に長さが出てくる エクセル関数 

  • この式はなぜエラー #VALUE! になるのだろう?

    この式はなぜエラー #VALUE! になるのだろう?   A  B  C  D 1    92 95 96 2 3  60 67 99 4  99 13 74 5  92 58 96 6  93 59 10 7  81 51 10 8  81 95 98 9  88 45  6 範囲 A3:C9 に上図のデータがあると仮定します。そして、 1行目の各セルに次の値を返したい、というのが問題です。 B1: セル A3、A5、A7 の最大値 C1: セル B4、B6、B8 の最大値 D1: セル C5、C7、C9 の最大値 1行目の各セルに次の配列数式を入力すれば希望通りの値が得られます。 B1: {=MAX(OFFSET($A3,0,0,5,)*MOD(ROW(A1:A5),2))} C1: {=MAX(OFFSET($A3,1,1,5,)*MOD(ROW(B1:B5),2))} D1: {=MAX(OFFSET($A3,2,2,5,)*MOD(ROW(C1:C5),2))} OFFSET関数の引数 0、1、あるいは 2 のところは COLUMN関数で置き換えられるはずと考えて B1: {=MAX(OFFSET($A3,COLUMN(A1)-1,COLUMN(A1)-1,5,)*MOD(ROW(A1:A5),2))} C1: {=MAX(OFFSET($A3,COLUMN(B1)-1,COLUMN(B1)-1,5,)*MOD(ROW(B1:B5),2))} D1: {=MAX(OFFSET($A3,COLUMN(C1)-1,COLUMN(C1)-1,5,)*MOD(ROW(C1:C5),2))} としたところ、いずれもエラー #VALUE! が返ってきます。 なぜエラーになるのか理解できません。どなたか私にアドバイスをいただけませんか? 参考までに申し上げると、http://okwave.jp/qa/q5897615.html の質問の回答を考えているときに、上の問題に遭遇しました。

  • エクセル関数のことで困っています。

    今、簡単な表計算の表を作っていますが、先に進まず困っています。 A1~A200のセルに1~200の番号が昇順で入っています。そしてデータとして,B2,C2,D2,E2 に各々a、b、c、dが入っており,,B3,C3,D3,E3 にa1、b1、c1、d1・・・・・・・・・・・・B200,C200,D200,E200にw,x,y,zのようにB,C,D,E列に適当な数が入っています。 そこで、E列の値で昇順  SMALL(D$1:D$200,A1)  に並べ替え、同時にB,C,D,Eの値も返したいのです。つまりエクセルの並べ替え機能を関数で自動で行いたいのです。 今は、関数の、ROW,SUMPRODUCT,COUNT,INDEX,LARGE,COUNTIF,COLUMN,などを使い関数バーに5行ほどになり、処理にとても時間がかかります。 何とか、簡単で早い計算式はないでしょうか。 よろしくおねがいします。

  • エクセルの縦長(4列500行)データの印刷について教えてください。

    エクセルの縦長(4列500行)データの印刷について教えてください。 エクセルのシート1のA B C D 列にそれぞれ500行のデータがはいっています。 印刷すると、用紙の右のほう半分は空白で、10枚印刷されてしまいます。 用紙の右のほうも使って、1枚にABCD列のセット×4くらい印刷できる方法は ないでしょうか? ↓こんな感じに印刷したいのですが.. ABCD ABCD ABCD ABCD 1 1 1 1 51・・51 101・・101 151・・151 2 2 2 2 52・・52 102・・102 152・・152 ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ 1列の縦長のデータはINDIRECT関数でできたのですが、 ↓ =INDIRECT("YK!A"&(COLUMN(A1)-1)*50+ROW(A1)) 列が増えると複雑ですごく時間がかかってしまいます。 どなたか詳しい方教えてください。よろしくお願いします。

  • エクセル抽出関数の使い方、教えてください!!

    大変恐れ入ります。過去の他の方の質問を一部引用しております。 <引用:2009/11/05 QNo.5425095> ---引用--- excel関数を用いてある行の範囲内の数値のみを違う行に抽出し、同じ列に対応する値も引っ張ってくることは可能ですか?     A   B   C   D 1   33   180 2   58   300 3   89   310 4   152   240 5   205   74 -------------------------------------------------- Q1. 上記にあるA1の”33”を、A1以外のセルにセットするとC,Dに正規のデータが抽出されない。    この際、    ・ =IF(AND(A1>=60,A1<=180),ROW(A1),"")    ・ =IF(OR(ROW(A1)>COUNT($C:$C),COLUMN(A1)>2),"",INDEX($A:$B,SMALL($C:$C,ROW     (A1)),COLUMN(A1)))    の抽出範囲も設定をしてみましたが、全く結果が得られません。必ずA1にデータがないとだ    めなのでしょうか。    もし可能であれば、その応用として下記の内容を検討しており、非常に苦戦しております。    是非教えていただければと思いますので、よろしくお願いします。 Q2. 上記サンプルの様なシートが2つ存在し、それを一枚のシートにまとめ、2つのデータベース     からそれぞれに対し異なる抽出条件を提示し、その結果一覧をそれぞれ表示したいと検討     しております。    大変申し訳ないのですが、少々急いでおります。是非よろしくお願いいたします。

  • Excelでセルの英字を取得する関数

    Excelでセルの英字を取得する関数を教えて下さい。  A B C D E F G 1 2 3 4 5 6 7 エクセルは 横のヘッダにアルファベットが並んでいます。 縦のヘッダに数値が並んでいます。 縦のヘッダは =ROW() で求まります。 1行目で書けば1 5行目で書けば5 と返ってきます。 同じ様に、 =COLUMN()は A列で書けば1 E列で書けば5 と返ってきます。 A列で書けばA E列で書けばE と返って来る関数が欲しいです。

  • Excelでコピーしたい

    こんにちは。 Excelで悩んでいます。たとえば、A列1行目からA1=A,A2=B,A3=C,A4=D と入力されていたとします。 これを最終的にB1=A,B2=A,B3=B,B4=B,B5=C,B6=C,B7=D,B8=D という形にしたいです。 これを簡単におこなう方法はあるでしょうか?上記のようにA1~A4までデータが入っていて、隣の列にA列の各セルの値を2つづつ入力するならコピペで簡単にできますが、A1~A26を2つづつB列に書いていくとかは大変な作業になります。何かしら上手にできる方法がありましたらご教授くださ。お願いします。

  • Excelの関数式について

    ExcelのB列(B2:B50)にフラグ「0」または「1」が入力されています。 フラグ「0」が入力されている行番号を関数を使用して取得したいと思っており、 下記関数でできるのですが、フラグ「0」が複数連続で続いた場合は、1つ目だけの 行番号を取得したいのですが、どのように変更したらよいのでしょうか。 D列に下記関数式を入力して、以下オートフィルしています。 =IF(COUNTIF(B$2:B$50,0)<ROW(A1),"",SMALL(INDEX((B$2:B$50<>0)*10^3+ROW(B$2:B$50),),ROW(A1))) 例えば、下記のようば場合は、行番号「2、5、8」を取得したいです。    A   B 1      -1 2       0 3      -1 4      -1 5       0 6       0 7      -1 8       0 9      -1 ・ ・

  • EXCEL、ランダム表示の発展系?

    EXCELのSheet1には A列にサイトタイトル、B列にURL、C列にカテゴリのデータがあるとします。 そして、D列には「=IF(B2="","",RAND())」このようなランダムの関数があります。 また、Sheet2のA列には =IF(ROW(A1)>COUNT(Sheet1!$D:$D),"",INDEX(Sheet1!$A:$B,MATCH(LARGE(Sheet1!$D$2:INDIRECT("Sheet1!D"&COUNT(Sheet1!$D:$D)+1),ROW(A1)),Sheet1!$D:$D,0),COLUMN(A1))) B列には =IF(ROW(B1)>COUNT(Sheet1!$D:$D),"",INDEX(Sheet1!$A:$B,MATCH(LARGE(Sheet1!$D$2:INDIRECT("Sheet1!D"&COUNT(Sheet1!$D:$D)+1),ROW(B1)),Sheet1!$D:$D,0),COLUMN(B1))) がA2,B2~A6,B6の5行に書かれています。 すると、Sheet2のA2,B2~A6,B6にはランダムに表示されます。 (以前教えてもらった方法です) そこで今回の質問ですが2つあります。 1つ目は、C列のカテゴリを指定して、その中からランダムに表示させたい。 2つ目は、同じドメインは表示しないようにしたい。 ちょっと、分かり難いかもしれませんが、このようにするにはどうすればいいでしょうか? 恐れ入りますが、教えていただけないでしょうか? よろしくお願いします。

  • Excelでのコピー

    Excelで名前の名簿があるとします。 それをコピーして等間隔(2行おきなど)に貼り付けできますか? 例)名前はA1からA9までとします。   それを例えばB1、2行あけて、B4、という感じです。 ちょっと見づらいですが・・・   A  B 1 a  a 2 b 3 c 4 d  b 5 e 6 f 7 g  c 8 h 9 i 少ないデータであれば一個ずつやればいいんですが 大量のデータだとめんどくさいので、何か良いやり方があれば 教えてください。

専門家に質問してみよう