Excel VBA質問箱 IV

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

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


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

【71923】続、セルの中央に縦線 12/4/25(水) 12:36 質問[未読]
【71924】Re:続、セルの中央に縦線 UO3 12/4/25(水) 14:43 回答[未読]
【71925】Re:続、セルの中央に縦線 12/4/27(金) 11:22 お礼[未読]

【71923】続、セルの中央に縦線
質問    - 12/4/25(水) 12:36 -

引用なし
パスワード
   教えて頂いたコード

With Range("B2")
      bx = .Left + .Width / 2
      by = .Top
      ex = bx
      ey = .Top + .Height
      ActiveSheet.Shapes.AddLine bx, by, ex, ey
    End With

これを縦に伸ばす

With Range("B2:B4")

はうまくいったのですが

With Range("B2,C2")

でとなりのC2はどうすれはれよいのか教えてください。
上のコードでは、B2にしか線がひかれない。

【71924】Re:続、セルの中央に縦線
回答  UO3  - 12/4/25(水) 14:43 -

引用なし
パスワード
   ▼ト さん:

あくまで、1つのセルに対して処理する場合のサンプルとしてアップしましたので
後は応用編なんですが・・・

たとえば サブプロシジャ仕立てにして、Test のような形で使うことも考えられますね。

Sub Test()
  vLine Range("B5")
  vLine Range("B10:C10")
  vLine Range("D5:D10")
End Sub

Private Sub vLine(r As Range)
  Dim bx As Double, by As Double, ex As Double, ey As Double
  Dim c As Range
  For Each c In r
    With c
      bx = .Left + .Width / 2
      by = .Top
      ex = bx
      ey = .Top + .Height
      ActiveSheet.Shapes.AddLine bx, by, ex, ey
    End With
  Next
End Sub

【71925】Re:続、セルの中央に縦線
お礼    - 12/4/27(金) 11:22 -

引用なし
パスワード
   度重なる質問にもかかわらず,ご回答有難う御座いました。
又、勉強いたしますので、宜しくお願いいたします。

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