Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


20666 / 76732 ←次へ | 前へ→

【61479】Re:任意のセルに入力後、オートシェイプに反映させたい
回答  neptune  - 09/5/12(火) 23:02 -

引用なし
パスワード
   ▼たけ さん:
>初回の質問に自分の描くコードを記載しておりました.
>(これがソースかどうかは分かりませんけど)
どうも失礼しました。これだけだと動作に問題なはいと思いましたので。
よく見ると、問題あったようです。

>一つだけつくってみましたが,cells(4,48)に1が入力された後,
>オートシェイプの塗りつぶしには反映されていません(>_<)
これ最初に書いてましたかね。?これなら何がいけないか一発で判りました。
見逃したかな?

>--------------------------------------------
>Private Sub Worksheet_Change(ByVal Target As Range)
>
>Application.EnableEvents = False
>  If Target.Address = Cells(4, 48).value Then
  If Target.Address = Cells(4, 48).Address Then
>    Select Case Target.Cells
     '未確認ですが、cellsだと、もし、複数のセルを選択して、その中の1つのセルだけ変化させると
    'どうなるんだろ?エラーになるような気がします。キチンと指定した方が安全且つ、わかり易い
     Select Case Target.Cells.value
          
>        Case 1
>          Sheets("反映シート").Select
>          ActiveSheet.Shapes("pp001").Select
>          Selection.ShapeRange.Fill.ForeColor.SchemeColor = 10
>    End Select
>  
>  End If
>Application.EnableEvents = True
>
>End Sub
多分これで動くと思いますが。。。。実験はしてません。

私ならこんな書き方をします。やってる事は同じです。

Private Sub Worksheet_Change(ByVal Target As Range)
const shName as string = "Sheet1"  'シート名
  Application.EnableEvents = False
  
  If Target.Address <> Worksheets(shName).Cells(4, 48).Address Then Exit Sub
  
  If Target.Value = 1 Then  '対象セルは1つとしている。
    Sheets("反映シート").Select  'この辺りselectしなければ駄目なのかな〜??
    ActiveSheet.Shapes("pp001").Select
    Selection.ShapeRange.Fill.ForeColor.SchemeColor = 10
  End If
 
  Application.EnableEvents = True

End Sub
0 hits

【61472】任意のセルに入力後、オートシェイプに反映させたい たけ 09/5/12(火) 13:11 質問
【61473】Re:任意のセルに入力後、オートシェイプに... neptune 09/5/12(火) 13:51 発言
【61474】Re:任意のセルに入力後、オートシェイプに... たけ 09/5/12(火) 14:03 発言
【61475】Re:任意のセルに入力後、オートシェイプに... neptune 09/5/12(火) 16:34 回答
【61477】Re:任意のセルに入力後、オートシェイプに... たけ 09/5/12(火) 21:27 発言
【61479】Re:任意のセルに入力後、オートシェイプに... neptune 09/5/12(火) 23:02 回答
【61488】Re:任意のセルに入力後、オートシェイプに... neptune 09/5/13(水) 12:18 発言
【61492】Re:任意のセルに入力後、オートシェイプに... たけ 09/5/13(水) 14:46 発言
【61502】Re:任意のセルに入力後、オートシェイプに... neptune 09/5/13(水) 22:00 回答
【61512】Re:任意のセルに入力後、オートシェイプに... たけ 09/5/14(木) 9:59 発言
【61522】Re:任意のセルに入力後、オートシェイプに... neptune 09/5/14(木) 13:07 発言
【61524】Re:任意のセルに入力後、オートシェイプに... たけ 09/5/14(木) 13:37 発言
【61528】Re:任意のセルに入力後、オートシェイプに... neptune 09/5/14(木) 16:35 発言
【61539】Re:任意のセルに入力後、オートシェイプに... たけ 09/5/15(金) 13:19 発言
【61543】Re:任意のセルに入力後、オートシェイプに... neptune 09/5/15(金) 16:52 発言
【61564】Re:任意のセルに入力後、オートシェイプに... たけ 09/5/18(月) 21:15 お礼

20666 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free