アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excelで、数値の入ったセルを別の場所にコピー貼付をしたとき、終わったセルを区別するため、コピーをとったときにそのセルの色を変えたいのですが、方法を教えて下さい。よろしくお願いします。

A 回答 (5件)

「たった1行」のVBAプログラムで、それらしくなりましたが、Changeイベントはクセがあるので、色んな場合にお望み通りなるかどうか。


Private Sub Worksheet_Change(ByVal Target As Range)
Target.Interior.ColorIndex = 6
End Sub
6は黄色ですか1-50ぐらいまで好みの色を探して見てください。
さてツール-マクロ-VBEをクリックして出てくる
画面のVBAProjectのSheet1をダブルクリックするとPrivate Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub
などが出ますが、左の▼をクリックしてWorksheet、右の▼をクリックしてChangeを選ぶと
Private Sub Worksheet_Change(ByVal Target As Range)
End Sub
がでますので真中に上記1行を挟みます。
範囲指定し、コピーし、貼りつけするとセルが黄色になります。
コピーモードの時だけに色付けしないと、一般の値の変更時に色がつくと不便なので
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.CutCopyMode = 1 Then
Target.Interior.ColorIndex = 6
End If
End Sub
とすべきでしょう。
    • good
    • 0
この回答へのお礼

imogasiさんありがとうございました。
オートシェイプで見えないボタンを作り、コピー元の隣のセルの文字にかぶせておき、そのボタンに「着色」と「セルデータのコピー」をマクロ登録することにしました。

もし、もっと良い方法にお気づきでしたら教えてください。

お礼日時:2004/03/07 16:31

#3のものです。


質問文から「コピー元」に着色したい、と判断したのですが、
「コピー先」を着色したいのなら、#3の回答は無視して下さい。
コピー元を着色というのであれば、下記のマクロでできると思いますが。
#3の回答で言葉が足りませんでした。
通常のコピーの変わりに「CPcolr」マクロ、
貼付の変わりに「PTcolr」マクロを使用して下さい。
    • good
    • 1
この回答へのお礼

moon00さんありがとうございました。
オートシェイプで見えないボタンを作り、コピー元の隣のセルの文字にかぶせておき、そのボタンに「着色」と「セルデータのコピー」をマクロ登録することにしました。

もし、もっと良い方法にお気づきでしたら教えてください。

お礼日時:2004/03/07 16:31

マクロでもいいとのことなので。


実はもっと短くなるのかもしれませんが。

Dim Lcel As Integer
Dim Rcel As Integer
Dim Tcel As Integer
Dim Bcel As Integer

Sub CPcolr()
Lcel = Selection.Column '選択された範囲の左端
Tcel = Selection.Row '   〃    上端
Rcel = Lcel + Selection.Columns.Count - 1 '   〃    右端
Bcel = Tcel + Selection.Rows.Count - 1 '   〃    下端
Selection.Copy
End Sub

Sub PTcolr()
Dim L2 As Integer
Dim T2 As Integer
L2 = Selection.Column '選択された範囲の左端
T2 = Selection.Row '   〃    上端
Selection.PasteSpecial Paste:=1
Application.CutCopyMode = False
Range(Cells(Tcel, Lcel), Cells(Bcel, Rcel)).Select
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
Cells(T2, L2).Select
End With

End Subこんな感じで、それぞれ「CPcolr」と「PTcolr」をボタンもしくはショートカットに割り付けて下さい。
貼り付けのオプション指定は現在「全て」になっていますが、
値のみ等、形式を選択して貼り付けに対応できます。
現在の色設定は黄色になっています。
    • good
    • 0
この回答へのお礼

moon00さん ありがとうございました。

お礼日時:2004/03/07 16:29

 コピー&貼り付けではなく、切り取り&貼り付けならどうでしょうか。


(1)元シートを保存するため、シート全体のコピーをとる。
 →ctrを押しながらシートタブをドラッグ
(2)数値の入ったセル全体に色を付ける。
 →塗りつぶし
(3)移したいセルを切り取り&貼り付けする。
 →セルを選んでcrt+X →貼り付けたい場所でctr+V
 これで、切り取った跡は色がなくなります。

この回答への補足

質問のしかたが下手でした。

色を変えるのが主目的ではありませんので、そのための操作を自分でしなくても色が変わるようにしたいのです。

セルを右クリックして「コピー」を命じたと同時にそのセルの色を変えるマクロを組み込んでおきたいのです。

クリップボードにコピーされるのと併行してセルの書式が変わるようにしたいということなんですが。

補足日時:2004/03/06 17:01
    • good
    • 0
この回答へのお礼

kikeroさんありがとうございました。
オートシェイプで見えないボタンを作り、コピー元の隣のセルの文字にかぶせておき、そのボタンに「着色」と「セルデータのコピー」をマクロ登録することにしました。

お礼日時:2004/03/07 16:28

 こんにちは。



 ツールバーに「塗りつぶし」(ペンキをこぼすマーク)のアイコンがあると思いますので,色を付けたいセルでそのアイコンを右クリックしてください。

(コピーと同時に色を変えるということでしたら,すいません,私には分かりませんので次の方にお答えを譲ります…)
    • good
    • 0
この回答へのお礼

o24hiさん ありがとうございました。

お礼日時:2004/03/06 17:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています