Excelでの貼り付けについての質問

このQ&Aのポイント
  • Excelでの貼り付けについて求められているのは、飛び飛びになっている行に1行ずつデータを貼り付ける方法です。具体的には、シート1の2、4、6行目をシート2の1、5、10行目に貼り付けたいという要望です。ただし、他の行にデータが存在しているため、シート2の1、5、10行目以外にデータが上書きされることは避けたいということです。しかし、簡単な方法は存在せず、マクロを使用する必要があるかもしれません。
  • Excelでの貼り付けについての質問です。飛び飛びになっている行に1行ずつデータを貼り付ける方法を教えてください。具体的な要望は、シート1の2、4、6行目をシート2の1、5、10行目に貼り付けたいということです。ただし、他の行に既にデータが存在しているため、上書きされないようにする方法も知りたいです。
  • Excelで飛び飛びになっている行に1行ずつデータを貼り付ける方法について質問です。具体的な要望は、シート1の2、4、6行目をシート2の1、5、10行目に貼り付けたいということです。ただし、他の行に既にデータが存在しているため、上書きされないようにする方法も知りたいです。マクロ以外にも実現できる方法があれば教えてください。
回答を見る
  • ベストアンサー

excelでの貼り付け

excelでの貼り付けについての質問です。 連続した行ではなく、飛び飛びになっている行に1行ずつ貼り付けることは可能でしょうか。 たとえば、シート1の2、4、6行目をコピーするとします。(コピーするものはexcelでなくても、数行にわたっているものなら何でも構いません) それを、シート2にコピーするのに シート2の1行目←シート1の2行目 シート2の5行目←シート1の4行目 シート2の10行目←シート1の6行目 というようにしたいのですが、簡単な方法はないでしょうか。 シート2の1、5、10行目を反転させて貼り付けると1~3、5~7、10~12行目に2、4、6行目が貼り付けられてしまいます。1、5、10行目以外にもデータが入っているため他の行にデータが上書きされるのは困ります。1、5、10行目は何度も上書きするので、飛ばしたい行には0を入れておいて加算で貼り付けということもできません。 これを実現させるにはマクロしかないでしょうか?

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

>元データがcase1.txtからcase10.txtまであるとし、それぞれををシート1からシート10で整理したいです。 例えば、取り込み元のファイル名がどこかのセルに書かれているなら、INDIRECT関数を使って、そのファイル名を付けたシートに値を飛ばすことができますが、基本的に関数では値を変更すると上書きされてしまうので、同じシートの値を別のシートに振り分けることはできません。 もし、すべての転記先のシートが同じレイアウトなら、シート1の2、4、6行目に値を返すのではなく、転記先と同じセル番地にそれらの値を表示させるように設定しておき、コピー貼り付けするときに「値」貼り付けでなく「数式」貼り付けすれば、結合セルの制限の問題は解決できると思います。 いずれにしろ、コピー元のテキストファイルのファイル名がどこかのセルに入力されているなら、簡単なマクロコードで対応できますので、このようなケースではマクロを利用されることをお勧めします。

rannar
質問者

お礼

何度もご回答ありがとうございました。 やはり、簡単な関数ではできないようですね。 マクロを使ったりして、作りなおしてみたいと思います。

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

補足説明をしていただいたのですが、作業内容を理解できません。 >形を整える用シートには何度も様々な元データを当てはめるので、コピー元の値はすぐに変わってしまうのでご提案いただいたリンクも使えないかと思います。 普通なら単純にリンクすればコピー元の値を反映すると思うのですが・・・・ >元データが複数あり、それらを個別のシートで希望の形式でまとめたい。 >希望の形式にするための整形用シートは1つだけあり、それを全ての元データに対し使いまわす。 この状況をもう少し詳しく例を挙げて説明してください。 >整形用シートから個別シートにコピーしたいときに、飛び飛びの場所にでも一気にコピーできるのか。 同じセル位置なら、貼り付けるときに「形式を選択して貼り付け」で「空白セルを無視する」にすれば、必要データのみ貼り付けることができます。 いずれにしろ、セル位置などに一定の基準がない複雑な操作を行っているように見えますが、このようなルールがない場合は、当然のことですがマクロでも実行することはできません。 また、数式を多用しているため再計算に時間がかかるようですが、もしシートにデータを分割していたりした場合は1枚のシートでまとめたり、ピボットテーブルなどを利用する、あるいはマクロで対応するなど、シート構成を抜本的に見直したほうが良いような気がします。

rannar
質問者

補足

説明下手で申し訳ありません。 元データがcase1.txtからcase10.txtまであるとし、それぞれををシート1からシート10で整理したいです。 まずcase1をシート1に入力する前に、整形用シートにcase1のデータを貼り付けます。 貼り付けたことで、整形用シートにあらかじめ書いている計算が行われ、case1を整形したデータが整形用シートの2,4,6行目に現れます。 その2,4,6行目の値をシート1の1,5,10行目に入力したいのです。 そしてcase2に移り、また先ほどと同じ整形用シートにcase2のデータを貼り付けると、整形したデータが整形用シートの2,4,6行目に現れます。 この時点でcase1の時のデータがcase2のデータに上書きされているため、リンク貼り付けだとシート1のデータもcase2のデータに変わってしまいます。 シート1~10ではセルの結合や分割を多用しているため「空白セルを無視する」を上手く使えないのですが、シートの形式を作りなおしてこれが使えるようにするのがいいかもしれません。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

コピー元のシート1の2、4、6行目と貼り付け先のシート2の1、5、10行目が一定の規則で配置されていれば数式で入力することも可能ですが、例示のデータではシート2の方が一定間隔ではないため、マクロを含むどのような方法でも1つ1つセルに数式あるいはコピー貼り付けする操作が必要です。 どのような目的で、そのようなコピー貼り付けがしたいのかわからないのですが、単純にシート2のそれぞれのセルにリンク数式を入力しておけばよいと思うのですが・・・ もし、単純なリンク貼り付けでは不都合がある場合は、目的を含めてもう少し具体的にご希望の操作を説明してください。

rannar
質問者

補足

ご回答ありがとうございます。 元データがシート2でまとめたい形式と違った形で出力されています。 そのため形を整える用のシートを作り、そこで元データの形を整えてからシート2に貼り付けています。 ここは元データファイルを貼り付けるだけで行えるようにしています。関数を多用しているせいか重いです。 形を整えるのをシート2ですれば済む話ですが、元データが何種類もありシート2に相当するシートを大量に作成するためシート2を持つbookは少しでも軽くしたいと考えています。 また、形を整える用シートには何度も様々な元データを当てはめるので、コピー元の値はすぐに変わってしまうのでご提案いただいたリンクも使えないかと思います。 元データが複数あり、それらを個別のシートで希望の形式でまとめたい。 希望の形式にするための整形用シートは1つだけあり、それを全ての元データに対し使いまわす。 整形用シートから個別シートにコピーしたいときに、飛び飛びの場所にでも一気にコピーできるのか。 このような状況です。

関連するQ&A

  • EXCELのマクロにて

    EXCELのにて連続したデータを入力したデータベースがあります。(行が5000、列がAAまで) このデータベースのデータの最終行だけを指定して違うシートにコピー・貼り付けがしたいのです。 マクロにてこのような作業をするときにはどういった文をかけばよいですか。

  • エクセル(2003)のコピーと貼り付けについて。

    エクセル(2003)のコピーと貼り付けについて、操作を自動化したいです。 VBA初心者です。 同じフォルダ内にAファイルとBファイルがあります。 Aファイルにはシート1からシート4まで有り、シート1とシート2にシート3と4を比較したデータを表示させています。 シート1とシート2はA1からG1まで項目として、A2からデータが表示されます。約20行程度、表示される行数は毎日変わります。 Bファイルにはシート1しかありません。A1からG1まで項目とし、A2からデータが表示されています。約100行。毎日変わります。 (Aファイルのシート1とシート2の表示されているデータを貼り付けていく為) Aファイルのシート1に表示されているデータ(A2から)を仮に20行としBファイルの101行目(入力されているデータのすぐしたの行)に貼り付け、Aファイルのシート2に表示されているデータ(A2から)を仮に20行とし、120行目に貼り付け。 毎日コピーする範囲や貼り付けをするセルが変わっていく、固定の範囲、セルではない。この作業を毎日、コピー貼り付けで操作しています。 この操作をラクにしたいです。 困っていることは、コピーする範囲が毎日変わってしまう。(行数が増減するため) 貼り付けるセルも変わってしまう、(行数が増減するため) 分かりずらい説明になっていましたら、申し訳ないです。 よろしくお願いします。

  • エクセルの貼り付けについて

    シート1には  A B 1あ い 2う  3え お という表があります シート2には  C 1か 2き  という表があります シート1の2行目はしばらく使わないので 非表示にして Cの列をコピーして貼り付けをしたところ 2行目に「き」と入力されてしまいました このきを3行目に表示させるコピー&ペーストの方法ありませんか? エクセル2016使用

  • エクセル 前行のコピー貼り付け

    エクセル 2003 空白をすることまでは、できたのですが、貼り付けが、・・・。 手作業でも、考えましたが、なにしろ、900も同じことをやらなければならず、さらに、そのシートが20枚もあるのですから、 途方にくれています。 これで、わかっていただけるでしょうか? 空白行の前の行のコピーして貼り付け(23行)全て、このパターン この作業を簡単にしたいのですが、 やはり、マクロ?関数?なのでしょうか。 教えてください、よろしくおねがいします。 1行 . .  この間は空白行(23行) .  ここに、1行目の行を、コピーして貼り付け(23行全てに) 25行目 . .  この間は空白行(23行) .  ここに、25行目の行を、コピーして貼り付け(23行全てに) 49行目 . .  この間は空白行(23行) .  ここに、49行目の行を、コピーして貼り付け(23行全てに) 73行目    ⇒ 上に同じ 97行目    ⇒ 上に同じ 121行目    ⇒ 上に同じ 900行目

  • エクセルのコピー、そして貼り付け

    エクセルで表を作っていますが、一つのセルに複数行入力(AIT + Enter)していますがこの表をコピーして他のシートに貼り付けると、行の長さがコピー元の行の長さにならず途中の行幅でコピーされてしまうため、いちいち行の長さを伸ばして使っています。きちんとした行の長さで貼り付けできる方法を教えてください。よろしくお願いします。

  • EXCELで自動的にデータレコードを追加する方法について

    EXCELシートのレコードを自動的に追加して生きたいのです。というのは2枚のEXCELシートがあって1枚のシートは入力フォームになっていて他のフォームにアクセスのようなレコードを作り1行目のレコードにリンクさせます。この場合1枚目の入力シートにデータ追加するたびに2枚目のシートにレコードが追加される方法がないでしょうか。マクロを使ってコピー貼り付けではできません。もちろんデータのフォームではデータ貼り付けを受け付けませんのでだめです。アクセスまがいのことをEXCELでしようとしているのですが。どなたかヒントいただけませんでしょうか。

  • Excelの「貼り付け」について

    Excelの「形式を選択して貼り付け」とただの「貼り付け」の違いについて教えてください。 といいますのもExcel2003で、数式の入ったあるシートの表示サイズを変更しようとすると(例えば100%→75%等)必ずフリーズしてしまう為、中のデータをコピーして別のシートに貼り付け(右クリック→貼り付け、もしくは「Ctrl」+「V」)してみましたが現象は変わりませんでした。(シートのコピーではなく、データを選択してコピーしました) 次に、データをコピーして「形式を選択して貼り付け」(デフォルトのまま「貼り付け:すべて」「演算:しない」にのみチェックが入った状態)をするとフリーズしなくなりました。 異なった結果になった為、2つの操作にどのような違いがあるのか不思議に思った次第です。 お分かりになる方がいらっしゃいましたらご教示お願い致します。

  • 複数のエクセルを一つに貼り付け

    複数のエクセルファイルを一つのエクセルファイルの中のシートに マクロを利用してデータを貼り付ける方法はありますでしょうか? 実績表というフォルダ内に、下記のエクセルファイルがあります。 ・貼付け元のエクセルファイル名:実績表+3桁数値 →10ファイル ・1つに集計したいエクセルファイル名:実績表  ※その中に、貼付け元のファイル名と同じシート名が10シートあります。 できれば、「値の貼付け」でなはく、数式も含めた状態のデータを貼付けしたい。 是非、マクロのコードを教えていただきたく、宜しくお願い致します。

  • エクセル:シートの全コピー貼り付けでオートシェイプを除いて実行

    エクセルのシート(Cells)の全データをコピー&(別のシートへ)貼りつける(マクロを使用して貼りつけています)とき、「オートシェイプ」だけを除いた全データを貼り付けることは可能でしょうか? そのオートシェイプはマクロボタンとしているのですが、マクロを実行するたびにオートシェイプの貼付けが繰替えされるため、どんどん重なっていくのを防ぎたいのです。よろしくご指導ください。 ※このオートシェイプの貼付の繰返しによりファイルが重くなることはないでしょうか?ないのなら無視してもよいかとは思っています。

  • エクセルで別ファイルのシートの貼り付けマクロ

    マクロ初心者です。よろしくお願いします。 excelファイルのシートに同じシート名csvファイルのデーターの貼り付けをしたいのです。 ↓詳しくは。 excelファイルがあります。(ファイル名:全社) シート名=集計、1、2、3、4、5、6、7、8、9、10(固定) csvファイルがあります。1~始まり数は変動(1~3だったり、1~7とか) 1ファイル=1シート、ファイル名とシート名は同じ excelファイルのシート(1~10)に、開いたcsvファイルの同じシート名(1~10)のデータを貼り付けたい。 毎回コピー・貼り付けの繰り返し作業なので、マクロ作成を試しているのですが、うまくいきません。 教えてください。お願いします。

専門家に質問してみよう