過去ログ

                                Page     596
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼罫線の色をリストから選択し変更する  kurenai 03/1/22(水) 16:51
   ┗Re:罫線の色をリストから選択し変更する  ポンタ 03/1/22(水) 19:27
      ┗Re:罫線の色をリストから選択し変更する  kurenai 03/1/23(木) 8:36
         ┗Re:罫線の色をリストから選択し変更する  ポンタ 03/1/23(木) 10:07
            ┗Re:罫線の色をリストから選択し変更する  kurenai 03/1/23(木) 10:39
               ┗Re:罫線の色をリストから選択し変更する  kurenai 03/1/23(木) 13:28
                  ┣Re:罫線の色をリストから選択し変更する  kurenai 03/1/23(木) 14:37
                  ┃  ┗Re:罫線の色をリストから選択し変更する  ポンタ 03/1/23(木) 14:52
                  ┃     ┗Re:罫線の色をリストから選択し変更する  kurenai 03/1/23(木) 15:01
                  ┗Re:罫線の色をリストから選択し変更する  ポンタ 03/1/23(木) 15:03

 ───────────────────────────────────────
 ■題名 : 罫線の色をリストから選択し変更する
 ■名前 : kurenai
 ■日付 : 03/1/22(水) 16:51
 -------------------------------------------------------------------------
   エクセルで座標を作成しているのですが、指定した場所の
罫線の色を変えて分かり易くしようと思っています。

罫線の色を・・・例えばリストから選んで変更するなんて
ことは出来るでしょうか??
リストの内容は、「赤」と「黒」
変更する罫線の場所は、「A1:A5」の下線です。

どなたかどうすれば良いか?分かる方、ご指導の程を
宜しくお願いします。
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : ポンタ  ■日付 : 03/1/22(水) 19:27  -------------------------------------------------------------------------
   あらかじめ、シート上にコントロールツールボックスから
ListBox1を作成して「赤」という項目と「黒」という項目を
設定しておいてください。

対象にシートモジュールに以下のコードを貼り付けて、
お試しください。

Private Sub ListBox1_Click()
  Select Case ListBox1.Value
  Case "赤"
    With Range("A1:A6").Borders(xlInsideHorizontal)
      .LineStyle = xlContinuous
      .ColorIndex = 3
    End With
  Case "黒"
    With Range("A1:A6").Borders(xlInsideHorizontal)
      .LineStyle = xlContinuous
      .ColorIndex = 1
    End With
  End Select
End Sub

PS.赤と黒のどちらかを選択するなら、オプションボタンでも良いのでは?
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : kurenai  ■日付 : 03/1/23(木) 8:36  -------------------------------------------------------------------------
   >PS.赤と黒のどちらかを選択するなら、オプションボタンでも良いのでは?

そうですね。その方が良いですね!
度々申し訳ありませんが、オプションボタンの場合はどうするのですか?
また、基本的な問題でコンボボックスやリストボックスにリストを入れる
には、どうすれば良いのでしょうか?出来れば、VBAで書く方法が間違い
無いのですが、簡単なようで出来ません。
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : ポンタ  ■日付 : 03/1/23(木) 10:07  -------------------------------------------------------------------------
   対象のシートモジュールに貼り付けて
お試しください。


>リストボックスにリストを入れるには、どうすれば良いのでしょうか?

Sub 項目追加()
  ListBox1.AddItem "赤"
  ListBox1.AddItem "黒"
End Sub


>オプションボタンの場合はどうするのですか?

Private Sub OptionButton1_Click()
  '赤
  With Range("A1:A6").Borders(xlInsideHorizontal)
    .LineStyle = xlContinuous
    .ColorIndex = 3
  End With
End Sub

Private Sub OptionButton2_Click()
  '黒
  With Range("A1:A6").Borders(xlInsideHorizontal)
    .LineStyle = xlContinuous
    .ColorIndex = 1
  End With
End Sub

Private Sub OptionButton3_Click()
  '罫線なし
  Range("A1:A6").Borders(xlInsideHorizontal).LineStyle = xlNone
End Sub
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : kurenai  ■日付 : 03/1/23(木) 10:39  -------------------------------------------------------------------------
   ポンタ さんありがとうございました。
おかげさまで、ようやくできました。
お世話様でした!
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : kurenai  ■日付 : 03/1/23(木) 13:28  -------------------------------------------------------------------------
   コンボボックスにリストを入れたのですが・・・
何度も項目を追加してしまって同じ項目が
出てきてしまいます。
ソースを書いてる場所が悪いと思うのですけど
どこに書けばよいのでしょうか?

・Module1

Sub 項目追加()
  Sheet6.ComboBox1.AddItem "赤"
  Sheet6.ComboBox1.AddItem "黒"
End Sub

・Sheet1

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Module1.項目追加
End Sub
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : kurenai  ■日付 : 03/1/23(木) 14:37  -------------------------------------------------------------------------
   申し訳無いですが・・(A1:A6)までの範囲の罫線を変えること
はできるのですが、他の(H17:GO17)などの範囲に変更すると
エラーが起きまして罫線が変更できません。
なにか特別な方法などはあるのですか??
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : ポンタ  ■日付 : 03/1/23(木) 14:52  -------------------------------------------------------------------------
   Range("A1:A6").Borders(xlInsideHorizontal)の xlInsideHorizontalとは
行の間に罫線を引きなさいという意味です。
だから、A1とA2、A2とA3、A4とA5、A5とA6 の間に線を引きます。

With Range("H17:G17").Borders(xlInsideHorizontal)
の場合1行しかありませんか罫線が引けないのです。

With Range("H17:G17").Borders(xlEdgeBottom)
のようにセルの下に引かせるか、

With Range("H17:G18").Borders(xlInsideHorizontal)
として、17行目と18行目の間に引かせてください。
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : kurenai  ■日付 : 03/1/23(木) 15:01  -------------------------------------------------------------------------
   ポンタ さん:
すみません。せっかくのアドバイスも理解出来ず
ごめんなさい!
ようやくわかりました。ありがとうございました。
 ───────────────────────────────────────  ■題名 : Re:罫線の色をリストから選択し変更する  ■名前 : ポンタ  ■日付 : 03/1/23(木) 15:03  -------------------------------------------------------------------------
   先ほど送信したつもりだったのですが、
送信できてなかったため、後先になりますが、

>どこに書けばよいのでしょうか?

もし、マクロで追加するなら、
「ThisWorbook_Open」が良いと思います。

以下のように、最初に削除してしまえば重複しません。

Sub 項目追加()
  Sheet6.ComboBox1.Clear
  Sheet6.ComboBox1.AddItem "赤"
  Sheet6.ComboBox1.AddItem "黒"
End Sub

それと、マクロで項目を追加するのは一般的ではありません。

普通は使っていない列に項目を書いておき、
ListFillRange に Sheet6!K1:K2 などと設定します。

すでに、ご存知のないようでしたら、スミマセン。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 596