Excel VBA質問箱 IV

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

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


26244 / 76732 ←次へ | 前へ→

【55820】Re:セルが条件を満たせば、オートシェイプで線を引きたい
発言  わいわい  - 08/5/20(火) 16:09 -

引用なし
パスワード
   マリアン さん今日は
>私の説明が不十分だったのですが、
Jakaさんには充分伝わっていたはずです。

>これは、どうやって線を作っているのかで変わってきます。

Sub 線作成1()
Dim sen As Shape
 Set sen = ActiveSheet.Shapes.AddLine(18.75, 702#, 547#, 758.25)
 sen.Name = "Abebobo"
 sen.Flip msoFlipHorizontal
End Sub

上記コードのように線を作るときに名前を付けてやれば良いでしょう。
しかし、2回目からはエラーが出ます。

そこで
>線に特定の名前をつけているのなら
>下記コードの様にすれば良いです。
>ただ、何個も同じ所に重ねて作るようになるから、最初に消した方が良いです。

Sub 線作成2()
Dim sen As Shape
 On Error Resume Next
 ActiveSheet.Shapes("Abebobo").Delete
 Set sen = ActiveSheet.Shapes.AddLine(18.75, 702#, 547#, 758.25)
 sen.Name = "Abebobo"
 sen.Flip msoFlipHorizontal
End Sub

’ActiveSheet.Shapes("Abebobo").Delete
で線を指定して消してから作ってやれば何回でもできます。
ただ、線が無い状態で ’ActiveSheet.Shapes("Abebobo").Delete
を実行するとエラーになっちゃいますので
On Error Resume Next
というおまじないをかけます。

あとは、IF文で分岐させてやればできます。

>orでつなげると、エラーになってしまいました。
If Target.Address(0, 0) = "J27" Or Target.Address(0, 0) = "J37" Then

0 hits

【55709】セルが条件を満たせば、オートシェイプで線を引きたい マリアン 08/5/16(金) 13:01 質問
【55710】Re:セルが条件を満たせば、オートシェイプ... わいわい 08/5/16(金) 13:46 発言
【55712】Re:セルが条件を満たせば、オートシェイプ... Jaka 08/5/16(金) 14:55 発言
【55715】Re:セルが条件を満たせば、オートシェイプ... マリアン 08/5/16(金) 15:41 質問
【55717】Re:セルが条件を満たせば、オートシェイプ... Jaka 08/5/16(金) 16:16 発言
【55720】やっぱり忘れてました。修正 Jaka 08/5/16(金) 16:49 発言
【55721】Re:セルが条件を満たせば、オートシェイプ... マリアン 08/5/16(金) 17:04 お礼
【55722】Re:セルが条件を満たせば、オートシェイプ... わいわい 08/5/16(金) 17:24 発言
【55806】Re:セルが条件を満たせば、オートシェイプ... マリアン 08/5/20(火) 10:47 質問
【55816】Re:セルが条件を満たせば、オートシェイプ... Jaka 08/5/20(火) 13:28 発言
【55818】Re:セルが条件を満たせば、オートシェイプ... マリアン 08/5/20(火) 14:28 質問
【55820】Re:セルが条件を満たせば、オートシェイプ... わいわい 08/5/20(火) 16:09 発言
【55857】Re:セルが条件を満たせば、オートシェイプ... マリアン 08/5/21(水) 14:08 質問
【55869】Re:セルが条件を満たせば、オートシェイプ... Jaka 08/5/21(水) 15:33 発言
【55887】Re:セルが条件を満たせば、オートシェイプ... マリアン 08/5/22(木) 10:44 お礼

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