こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

エクセルで描画のコントロール

エクセルのセル幅を小さく設定(例:25程度)に設定して、セルの境界線をCADでいうグリッドに見立てて直線を描画したいと考えています。その時の条件としては、あるセル範囲(例:B~H,3~20の間)のセルの境界線の交点(下の例で、┌┐┘└├┬┤┴┼となるところ)
┌─┬─┐
│ │ │
├─┼─┤
│ │ │
└─┴─┘
のみ直線の始点と終点が選択できて、任意の交点同士で直線が垂直、水平、斜めに引けるようなマクロって作ることが出来ますか?
同時に、表示-ツールバー-図形描画などで表示されるボタンからの勝手な描画も禁止にしたいのですが、どうやっていいのか?てんで、解りません。どなたか?詳しい方がいらっしゃいましたら、教えて頂けないでしょうか?宜しくお願いいたします。

投稿日時 - 2006-10-22 14:05:11

QNo.2489577

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

それならAltキーを押しながら直線を引けばできます。

投稿日時 - 2006-10-22 17:05:29

補足

重ね重ね有難う御座います。
多分、ご指摘の方法ですと、あるセル範囲に限定したきのうではなく、シート全体が対象になると思います。あるセル範囲(例:B~H,3~20の間)の条件をつけることは不可能ですか?
宜しくお願い致します。

投稿日時 - 2006-10-22 17:14:14

お礼

質問方法が悪かったので改めて、質問しなおします。
有難うございました。

投稿日時 - 2006-10-22 17:22:27

ANo.1

とりあえず、セルの交点に斜めに線を引くマクロを作ってみました。
For I = 1 To 5
TAKASA = TAKASA + Cells(I, 1).Height
Next
TAKASA1 = TAKASA
TAKASA2 = TAKASA1 + Cells(6, 1).Height
For I = 1 To 3
HABA = HABA + Cells(1, I).Width
Next
HABA1 = HABA
HABA2 = HABA1 + Cells(1, 4).Width
ActiveSheet.Shapes.AddLine(HABA1, TAKASA1, HABA2, TAKASA2).Select

投稿日時 - 2006-10-22 16:19:24

補足

早速の回答有難う御座います。
すこし、私の考えているのと違うので、補足させて頂きます。
説明が足らずにすみませんでした。エクセルの表示-ツールバー-図形描画を表示して直線を選ぶと、カーソルが+に変わりますよね?
そのカーソルが、セルの境界線のみ離散的に選択(もしくは、左クリックしたときに直近の境界線に飛んで)直線を引くってイメージなんですが?重ね重ね教えて頂けないでしょうか?宜しくお願い致します。

投稿日時 - 2006-10-22 16:32:48

あなたにオススメの質問