Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Excel 2013)
別sheetへコピーした際、元sheetの文字列全てに色をつけたい
投稿日時: 21/05/07 23:12:56
投稿者: rragdoll

sheet2から任意の文字列をsheet1コピーした場合、元のsheet2にある文字列全て(重複あり)に色を付けたいです、またsheet1に貼り付けた文字列を消した場合、sheet2の色が消えるようにしたいです。
職場での作業頻度が多く、苦労しております。
どうかお知恵をお貸し下さい、宜しくお願いします。
 

回答
投稿日時: 21/05/08 00:10:02
投稿者: WinArrow
投稿者のウェブサイトに移動

確認
>sheet2から任意の文字列をsheet1コピー
文字列をコピー
って、どんなことでしょうか?
 
任意をセルをコピーならば、理解できるんですが・・・・
 
>元のsheet2にある文字列全て(重複あり)に色を
ここも、「文字列全て」がよくわかりません。
「セル範囲」、または、「列」ではないでしょうか?
 
>重複あり
って、どこを見れば、重複が確認できますか?
 

投稿日時: 21/05/08 00:30:22
投稿者: rragdoll

説明が拙く申し訳ありませんでした。
 
職場で配置作業をしています。
下記のように作業経験を(sheet2)にリスト化し、別シートにある配置表(sheet1)の製造作業に当てはまる作業者をコピペして配置、コピペしたリストの作業員は【検索と置換】にて塗りつぶし重複配置の防止をしています。
 
作業経験シート(sheet2)から別シートの配置表(sheet1)にコピペした人は作業経験シート(sheet2)の名前を自動で塗りつぶしてくれるようになればと考えました、そして配置表から名前を消した場合、塗りつぶしが解除されるようになれば最高なんです。
どうかよろしくお願いいたします。
 
 
作業1 作業2 作業3
Aさん Bさん Aさん
Bさん Cさん Cさん
Cさん

回答
投稿日時: 21/05/08 00:45:15
投稿者: WinArrow
投稿者のウェブサイトに移動

ステップを分けて考えましょう
 
(1)対象者をsheet2からsheet1へ複写する。
 対象者は、どのようにして、指定するのですか?
  VBAで対象者を決定できるのですか?
(2)Sheet2の対象者のセルを塗りつぶしを競定します。
(3)削除する対象者を削除する。
  どのようにして、指定するのですか?
 
(1)の複写することだけは、マクロの記録でコードができます。
(2)もマクロの記録でコードができます。
(3)も、指定方法さえ決まれば、マクロの記録でコードは作成できまs。
 
以上で、(1)と(2)を連結すれば、完成すると思います。
(3)は別次元ですから単独ですね・・・
 
 
では、頑張ってください。
 
##コードの作成依頼は、受け付けていません。
 
 
 

回答
投稿日時: 21/05/08 06:10:36
投稿者: simple

今までのお話を聞いた限りでは、
マクロというより「条件付き書式」の出番かな、と思いました。
 
こんなレイアウトとします。

<<Sheet1>>                     <<Sheet2>>
   A       B      C             A      B      C
1  作業1                     1  作業1  作業2  作業3
2  Aさん                     2  Aさん  Bさん  Aさん 
3  Bさん                     3  Bさん  Cさん  Cさん 
4                            4  Cさん

Sheet2の A1:C4を適用範囲として
=AND(A1<>"",COUNTIF(Sheet1!$A1:$C4,A1)>0)
といった条件で 「条件付き書式」を設定しておきます。
($A1:$C4は単なる例示です。)
 
そうすれば、
・Sheet1のA2セルに"Aさん"をコピーした段階で、
  Sheet2にあるすべての"Aさん"セルの書式が、指定したものに変わるはずです。
・Sheet1のA2セルにある"Aさん"を消去すると、
  Sheet2にあるすべての"Aさん"セルの書式が、元に戻ります。
 
たぶん現実の条件は、もっと詳細かつ多様なものでしょうけど、
上記の考え方が応用できないですかね。
いかがですか?

投稿日時: 21/05/08 13:21:40
投稿者: rragdoll

 simpleさん丁寧なご回答ありがとうございます。
VBAに拘りすぎて条件付き書式設定を考えていませんでした。
早速やってみたところまさに理想の形になりました。
これからの作業が捗ります。
大変ありがとうございました。