[[20160525132504]] 『ComboBoxのリストの表示形式』(くろ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ComboBoxのリストの表示形式』(くろ)

いつもお世話になってます。
G列の日付をComboBoxに重複と空白以外を表示してます。

 "m月d日"で表示したいのですが、▼をクリックしたとき
2行目のデータだけ【2016/04/01】と表示されます。

どこを直したらいいのでしょうか?
ご教授おねがいします。

    |[A]  |[B]        |[C]    |[D]    |[E]  |[F]         |[G]    
 [1]| 番号| 工 事 名| 受注者| 担当者| CODE| 指 示 内 容| 指示日
 [2]|    1|           |       |       |     |            |4月1日 
 [3]|    2|           |       |       |     |            |5月1日 
 [4]|    3|           |       |       |     |            |5月1日 
 [5]|    4|           |       |       |     |            |5月1日 

※B列〜F列は個人情報の為、空白にしてあります。

Private Sub UserForm_initialize()

Dim i As Integer

    ComboBox4.Clear  

    With ComboBox4
        .AddItem Cells(2, 7)
        For i = 2 To Range("B1").End(xlDown).Row
            n = Application.WorksheetFunction.CountIf(Range(Cells(2, 7), Cells _
                    (i - 1, 7)), Cells(i, 7))
            If n = 0 Then
                If Cells(i, 7).Value <> "" Then
                    .AddItem Format(Cells(i, 7), "m月d日")
                End If
            End If
        Next i
    End With

End Sub

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 各行ループして編集して AddItem する前に、なぜか

 G2 の値をそのまま AddItem してますね?
 ですから、ループ内では、編集したものをコンボボックスの2行目からAddItem するロジックになっていますよ。

(β) 2016/05/25(水) 13:52


With ComboBox4
 .AddItem Format(Cells(2, 7), "m月d日")
   For i = 2 To Range("B1").End(xlDown).Row

(mm) 2016/05/25(水) 13:58


 処理例です。

 Private Sub UserForm_initialize()
    Dim c As Range

    ComboBox4.Clear

    With ComboBox4
        For Each c In Range("B2", Range("B" & Rows.Count).End(xlUp)).Offset(, 5)
            If Not IsEmpty(c.Value) Then
                If WorksheetFunction.CountIf(Range("B2", c), c) = 1 Then
                    .AddItem Format(c.Value, "m月d日")
                End If
            End If
        Next
    End With

End Sub

(β) 2016/05/25(水) 14:00


(β)さん
いつもお世話になってます。
なるほど!
.AddItem Cells(2, 7)ですでにAddItemしているんですね。
お恥ずかしながら、人の使えそうなものを自分のパターンに改造しているので
必要なのかと残してました。

2016/05/25(水) 14:00
参考にさせて頂きます。
いつも的外れな質問ですいません。ありがとうございました。

(くろ) 2016/05/25(水) 14:10


(mm) さん

そういうことなんですね。
ありがとうございます。解決しました。
(くろ) 2016/05/25(水) 14:11


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.