Excel VBA質問箱 IV

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

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


1203 / 13645 ツリー ←次へ | 前へ→

【75680】オートシェイプの表示・非表示 visibleが走らない hoda 14/6/12(木) 22:40 質問[未読]
【75681】Re:オートシェイプの表示・非表示 visibl... とおりすがり 14/6/12(木) 23:01 回答[未読]
【75700】Re:オートシェイプの表示・非表示 visibl... hoda 14/6/16(月) 9:32 お礼[未読]

【75680】オートシェイプの表示・非表示 visible...
質問  hoda  - 14/6/12(木) 22:40 -

引用なし
パスワード
   VBA初心者です。
もうすでにいろいろマクロが組まれているエクセルに、
オートシェイプの表示・非表示のマクロを組み入れたいです。
指定したセルに「1」が入力されているときのみ、表示されるマクロです。

しかし、本当に入れたいシートに下記マクロを組み入れても動きません。 

同じエクセル内に、新しくsheet1を作り、同じマクロを入れると
ちゃんと動きます。

何か、動かない要因が考えられますでしょうか。

Microsoft Excel Objects のシートで、Worksheet の Changeに
下記マクロを入れています。

Private Sub Worksheet_Change(ByVal Target As Range)

If Cells(1, 1) = 1 Then
  MsgBox "1が入力"
  ActiveSheet.Shapes(テキストボックス1).Visible = True
  
Else
  MsgBox "1以外が入力されてます"
  ActiveSheet.Shapes(テキストボックス1).Visible = False
  
End If
  
End Sub

一緒にメッセージボックスを入れると、メッセージは出ているので、
プログラムは走っていると思います。
よろしくお願いします。

【75681】Re:オートシェイプの表示・非表示 visi...
回答  とおりすがり  - 14/6/12(木) 23:01 -

引用なし
パスワード
   それで本当に動くのか?
"をテキストボックス1の前後にいれて、文字列にしてやらないとダメでは?

Msgbox Me.Shapes(テキストボックス1).TopLeftCell.Address
とかいれて、目的とするShapeか確かめるとか。

あと、本題とは関係無いが、TargetがどのCellか判断してやらないとうっとおしく無いか?

【75700】Re:オートシェイプの表示・非表示 visi...
お礼  hoda  - 14/6/16(月) 9:32 -

引用なし
パスワード
   とおりすがり さん
どうもありがとうございます!
できました!!!!!

原因は分かりませんが、探してみると、目的のオートシェイプ以外ばかりを指定
しており、、、、
とりあえず、目的のオートシェイプ以外を全て削除してみました。
そうすると、希望通りにソフトが走ってくれました!
その後、削除したオートシェイプを元に戻しても、ちゃんと動いています。

ありがとうございました!!

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