- ベストアンサー
エクセルで複数のセルを選んでのコピー
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
>エクセルで複数のセルを選んでのコピーは可能でしょうか? >コピー先へはセルの間の行数も変わらない形で貼り付け ⇒この要件ではマクロ(VBA)以外は厳しいとと思う。 お遊びマクロ例です。 (1)お試しで対象シートのタブ上で右クリック→コードの表示(VBE画面表示)→ 以下のコードを貼り付け (2)対象の不連続セルを選択→マクロを実行 (3)因みにマクロ削除は、貼り付けたコードをクリア、VBE画面を終了すればOKです。 Sub sample() On Error Resume Next Set base = Application.InputBox("コピー先セルを入力してください。", Type:=8) If base Is Nothing Then Exit Sub For Each a In Selection If b = "" Then b = a.Row: c = a.Column base.Offset(a.Row - b, a.Column - c) = a.Value Next End Sub
その他の回答 (6)
- keithin
- ベストアンサー率66% (5278/7941)
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
Excel2010上で「そのコマンドは複数の選択範囲に対して実行できません。」と表示されるときは、同一ではない列範囲(若しくは行範囲)を選択範囲として選んだ場合に表示されます。 同一の列や行上の一範囲(4角形)に限られます。 同一の列や行の上の一範囲でその現象が起きるのはシートがグループ化されている場合です。
- keithin
- ベストアンサー率66% (5278/7941)
そのメッセージが出るのは「コピーするとき」じゃなく,「貼り付け」を行うときです。 つまり,飛び飛びのセルはコピーできますが,飛び飛びのセルに貼り付けることが出来ません。 結論から言うとご質問でヤリタイ事は基本「できない」のですが,そこを敢えて行うなら,次のような方法は可能です。 手順: 3列1行に「タイトル」と記入し,3列にオートフィルタを取り付ける オートフィルタで「黄色いセル」などの方法でコピーしたい行だけに絞り込む 絞り込まれたセル範囲を選択し,選択範囲の右下のフィルボタンで「右に」1列オートフィルドラッグする オートフィルタを解除する(添付図参照) 4列2行から4列9行に黄色いセルだけがコピーされているので,4列2行から4列9行までの範囲を「まとめて選んでコピー」する。飛び飛びのセルを選んでコピーするのではないので,間違えないように注意。 目的のセルを選び,形式を選んで貼り付けで「空白のセルを無視する」にチェックを入れてOKする。
お礼
回答ありがとうございます。
- asuncion
- ベストアンサー率33% (2127/6289)
コピー後にどういう結果になることを想定されていますか?
お礼
回答ありがとうございます。 No3さんが画像をつけてくれましたが、 このような形で貼り付けを行いたいです。 たとえば A 1 佐藤 2 - 3 田中 4 木村 5 石松 というような行があったときに 1 佐藤 2 3 田中 4 5 石松 というように、連続していないセルをそのままコピーし、セルの間の行数も変わらない形で 貼り付けを行いたいのです。
- K66_FUK
- ベストアンサー率22% (188/824)
普通に出来るが。 色を付けた所だけをやるっていうのなら、少ないなら色のついたセルの横に何でもいいのでフラグ立てて(1とかワイルドカードとか)、オートフィルタでフィルタ状態にして、1でフィルタかければ色のついたところだけ残りますのでコピーしたらいいですよ。 たくさんあるようでしたら、特定の条件下で色を付ける方法もあり、その条件を満たした場合のみフラグを立てる等可能ですので、いろいろやって見てください。
お礼
回答ありがとうございます。
お礼
回答ありがとうございます。