• ベストアンサー

データを複数行ずつ空けてコピーする方法について

エクセルのデータ(縦方向の)を複数行(2~3行) ずつ空けたセルにコピーをしたいのですが、方法が 分かりません。 どなたかお教え下さい。 上記の質問の意味は、2行の例ですと、 123   123 234 →      ← 1セル空ける 345   234          ← 1セル空ける       345 といった意味です。  ご指導の程、宜しくお願いします。     

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

(テストデータ)A1:A6に1-6を入れます。 (関数式)B1セルに式 =IF(MOD(ROW(A1),2)=1,INDEX($A$1:$A$10,INT(ROW(A1)+1)/2,1),"")を入れます。 (式の複写)B1をB2-B11まで複写する。 (結果)B1=1、B2=なし、B3=2、B4なし B5=3 上記式は行が奇数の時は、A列の(自分の行n+1)/2の行を 取ってくる。 VBAならもっと簡単だが。 2行おきの時はMOD(A1,3)=1のとき、 A列のROW(A1)+2/3を取ってくれば良い。

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

その他の回答 (5)

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.6

何回も行う時にはマクロが早いかもしれません。下にコードを書いてみました。ご参考に。 操作方法   1.最初にコピー元セル範囲を選択します。   2.次に、コントロールキーを押しながら、貼り付け先の最初のセルを選択します。     (これで2つのセル範囲(1つは単一セル)が選択された状態になります)   3.この状態で下のマクロを実行します。 コード中の copyStep に貼り付ける行のステップ数を設定するようにしてあります。3行毎に貼り付けの場合は 2 → 3 にします。 頻繁に使う場合は、ツール→マクロ→マクロ でマクロを選択し、オプシュンからショートカットキーを割り当てておくと便利と思います。ショーカットキーは半角英字大文字(ZやAなど)を指定します。 ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュール で標準モジュールを挿入します。出てきたコードウインドウに下記マクロをコピーして貼り付けます。 ↓ Sub StepCopy()   Const copyStep = 2 'コピーステップ   Dim copyRng As Range 'コピー元セル範囲   Dim pasteTopRng As Range '貼り付け先セル   Dim wk As Range, rw As Long '作業用変数,行カウンタ   On Error GoTo ErrorHandler   'コピー元セル範囲と貼り付け先セルを決める   For Each wk In Selection.Areas     If wk.Count > 1 Then Set copyRng = wk     If wk.Count = 1 Then Set pasteTopRng = wk   Next   '指定ステップで貼り付ける   For Each wk In copyRng     pasteTopRng.Offset(rw, 0) = wk     rw = rw + copyStep   Next   Exit Sub ErrorHandler: End Sub

kryuichi
質問者

お礼

前略いたします。 回答していただいてありがとうございました。 ただし、当方はエクセルの初心者であるため、 今まで見たことがない画面が沢山出てきてほ とんど全くといって良いほど分かりませんで した。 これからは「マクロ」や「ショートカット」 とは何か、というところから学んでいきたい と思っております。 これからもご指導のほど、よろしくお願い申し 上げます。                   草々

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

#4 misatoanna です。 訂正させてください。 > B1 に '=A1、B3 に '=A3 と入力します。 これは、B1 に '=A1、B3 に '=A2 と入力 の誤りです。ごめんなさい。

kryuichi
質問者

お礼

前略いたします。 回答していただいてありがとうございました。 ただし、当方はエクセルの初心者であるため、 よく分からないところがありました。 始めは、関数を用いたコピーをしたしたところ うまくいったのですが、実は3行空けて行う 表を作っていまして、関数式をいろいろ変えて みたのですが、数式の意味が分かっていないせ いでうまくいきませんでした。 また、コピー元とコピー先が固定されているため この位置をずらした場合にはうまくいきません。 =IF(MOD(ROW(A1),2)=1,INDEX($A$1:$A$10,INT(ROW(A1)+1)/2,1),"") のどこを変えれば空ける行数を変更でき、コピ ー先やコピー元の先頭のセルの位置を任意に変 えることができるのでしょうか(例えばコピー 元A2からコピー先D4へ等)。 お忙しい中、申し訳ないのですが、今一度ご教 授お願い頂けませんでしょうか。 関数を使わない方法も試してみましたが、元デー タを消去しますとコピー先が「0」になってしま い使えませんでした。 しかし、当方にとって画期的なことだったのでこ の方法も今後積極的に使用したいと思っています。                   草々

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

関数らしい関数を使わない方法です。 たとえば、A1:A10 にデータが入っていて、それを B1、B3、B5、‥‥ と一行おきに コピーすると仮定します。 1.B1 に、'=A1、B3 に '=A3 と入力します。    ※ =A1 ではありません。頭に必ず ' をつけてください。 2.B1:B4 を選択して下方にドラッグコピーします。   上記例ではデータが10個ですから、B20あたりまでですね。   ドラッグコピー以外のコピペでは、あとの処理が効きません。 3.B列を選択し、[データ]-[区切り位置] とたどり、そのまま [完了] します。 ――どうですか?

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

 #1です。  すみません、逆の話しをしてしまいました。

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

 [編集(E)]-[ジャンプ(G)]-[セル選択(S)]で「可視セル(Y)」を選び複写を行なうと、表示していないセルは複写の対象外とできますので、この手法を利用しております。

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

関連するQ&A

  • Access データを複数行に貼り付ける方法

    Access2013 テーブルの フィールドで 1つのセルのデータ(例/商品名)をコピーし、 同じフィールドの連続した複数行に貼り付ける方法を教えて下さい。 Excelの様にやってみたのですが出来なかったので。 宜しくお願いします。

  • エクセルで複数行のデータを1行にする方法

    エクセルで複数行のデータを列挿入--切り取り--貼り付けで1行にしたいのですが、 その様なセルの並びが沢山あります。 VBAマクロなどで一度に出来る方法が有りましたらどうか教えて下さい。 データはこんな感じです。 ┌─┬─┬─┬─┬─┐ │01│04│07│10│13│ ├─┼─┼─┼─┼─┤ │02│05│08│11│14│ ├─┼─┼─┼─┼─┤ │03│06│09│12│15│ ├─┼─┼─┼─┼─┤ │16│19│22│25│28│ ├─┼─┼─┼─┼─┤ │17│20│23│26│29│ ├─┼─┼─┼─┼─┤ │18│21│24│27│30│ ├─┼─┼─┼─┼─┤ この様に並び替えたいのです。 ┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐ │01│02│03│04│05│06│07│08│09│10│11│12│13│14│15│ ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ │16│17│18│19│20│21│22│23│24│25│26│27│28│29│30│ ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ 何卒宜しくお願いいたします。

  • エクセル 行と列の入れ替え方法

    エクセルの使い方で質問です。 -例1- 行1にア行 行2にカ行 行3にサ行 のデータがあります。 現在この例1のデータは横方向(列方向)に伸びています。 これを縦方向(行方向)に伸びる形例2に並び替えたいと思います。 -例2- 列A  列B  列C ア行 カ行 サ行 どのように行えばいいのでしょうか。 アドバイスの程よろしくお願いします。

  • エクセル 複数行にまたがっているデータを一つの行3

    エクセル 複数行にまたがっているデータを一つの行にまとめ(応用) 以前にも同じような質問で1商品複数行のデータを1行にまとめるマクロ をつくって頂いたのですが、(http://okwave.jp/qa/q8191364.html) これが、たまたま、1商品1行のデータがありまして、まとめるとエラーがでてしまいます。 (エラーがでるブック http://yahoo.jp/box/aiXHto) →成分の箇所だけまとめたいのが目的。 またかなり無理な作業を承知の上でのマクロなんですが、 下記のサンプルデータで http://yahoo.jp/box/SUs3B3 前のように複数行を1行にまとめたいのですが、成分の箇所がちょっと複雑で サンプルデータの黄色のA成分、B成分、C成分があるのですが、 これを一つのセルにsheet2のようにまとめたいのですが、 VBAで上記の処理を出来る方法がありますでしょうか。  またtom04さんいつもありがとうございます。

  • エクセルで列に入力した情報を行に移す方法

     MACでエクセルを使っています。列(横)に複数セル分入力した情報(数字)を指定した行(縦)に移動させたいと思っているのですが、一つ一つコピー→貼り付けする方法しかないのでしょうか。大量にあるのでどなたか効率のいい方法を教えて頂けないでしょうか。お返事お待ちしています。  例             (1)                      (2)  (1)(2)(3)→→→  (3)                               ※()はセルだと思って下さい。                        

  • セルに複数行の文字があるワードの表をそのままの形でエクセルにコピーする方法

    1つのセル内に改行された複数行の文字があるワードの表をエクセルにコピーすると、1行分が1セルにコピーされてしまい、1つのセルに複数行入った形でコピーできません。 1つのセルに複数行入った形とは、セル内の文字をalt+enterで改行した状態のことです。 もし、これを可能にする方法をご存じの方がおられましたら教えてください。

  • エクセルで,複数行のままコピーしたい

    エクセルで,ある1つのセル(例えばA1)に,複数行になっている文字列があります(Alt+Enterにより,セル内で改行したものです). 別のセル(例えばB2)に「=A1」と入力すると,B2にはA1にある文字列が表示されるのですが,改行が消えてしまい,1行で表示されてしまいます. 改行を消さずにコピーする方法はないでしょうか.教えてください.エクセルのバージョンは2010です. よろしくお願いします.

  • エクセル コピーしたデータを1行おきに貼り付け

    エクセル2003を使っております。 コピーしたデータを1行おきに貼り付けたいのですがやり方がわかりません。あと、1つのセルに対して2行ごとに結合したいのですがどのようにすればいいのか。教えてください。よろしくお願いします。

  • エクセルの横長の表の行のデータの有無の探し方

    エクセル2003で、列も行も多い表を作りました。印刷する事は無く、画面上でデータ管理のみに使います。特に横方向にセルが多く、A~Z、AA~AZと今後それ以上増える見込みで、縦のセルも今後増えます。 なじみ易い例で仮に説明すると、項目名として、1行目には横方向に、A列には縦方向にそれぞれ草野球チームの名前を1セル1チームずつ入力していき、縦と横の交わった地点にあるセルにその2チームの過去の対戦年月日を入力したようなものです。 質問ですが、例えば、A30のセル(あるチーム名)を一旦ポイントし、その右側に対戦年月日が入力されているセルがあるかどうかを調べる場合に、いちいち右端までスクロールしながら目視で確認しなくてもわかる方法があれば教えてください。日付は2013/9/29のように入力しています。

  • エクセルで複数行コピーして挿入する方法ありますか。

    教えてください。 いろいろ試しましたがうまくいきませんでした。 エクセル2003を使っています。 既にある表を行単位でコピーし、元行下に複数挿入することは可能でしょうか? 挿入で空白を開けてコピーする方法もありますが、既にある表が1500を超えるため 一度に変換できないか試行錯誤しています。 コピーし増やしたい行数は全て同じです。 変換後、他のソフトへ貼り付けるため関数は使用しない方法がいいのですが。 例 1111 2222 3333             1111 2222 3333 4444 5555 6666             1111 2222 3333 7777 8888 9999             1111 2222 3333 0000 ・・・・ ・・・・             4444 5555 6666 ・・・・ ・・・・ ・・・・             4444 5555 6666 ・・・・ ・・・・ ・・・・      →      4444 5555 6666 ・・・・ ・・・・ ・・・・             7777 8888 9999 ・・・・ ・・・・ ・・・・             7777 8888 9999 ・・・・ ・・・・ ・・・・             7777 8888 9999 ・・・・ ・・・・ ・・・・             0000 ・・・・ ・・・・ ・・・・ ・・・・ ・・・・             0000 ・・・・ ・・・・ ・・・・ ・・・・ ・・・・             0000 ・・・・ ・・・・ ・・・・ ・・・・ ・・・・             ・・・・ ・・・・ ・・・・ 少し面倒な質問申し訳ございません。 お分かりになる方いましたら教えていただきたいのですが、 よろしくお願いします。

専門家に質問してみよう