2010-05-14 10 views
3

사용자가 콤보 상자의 목록에서 항목을 선택할 수있게하려는 PowerPoint를 만듭니다. 이 후에 어떤 일도 일어나지 않아도되며, 화면에 자신이 선택한 기록을 제공하는 것입니다.PowerPoint 콤보 박스에서 항목을 올바르게 나열하는 데 문제가 있음

내 문제는 내가 콤보 상자를 채울 수 있고 사용자가 항목을 선택할 수 있지만 콤보 상자를 클릭 할 때마다 목록이 길어진다는 것입니다 (즉, 목록에서 클릭 할 때마다 복제 됨) . 또는 콤보 상자를 지우고 채울 수도 있지만이 시나리오에서는 사용자 선택 항목도 지워집니다.

VBA 예 1 :

Private Sub ComboBox1_DropButtonClick() 
With ComboBox1 
.AddItem " ", 0 
.AddItem "speed", 1 
.AddItem "provisionality", 2 
.AddItem "automation", 3 
.AddItem "replication", 4 
.AddItem "communicability", 5 
.AddItem "multi-modality", 6 
.AddItem "non-linearity", 7 
.AddItem "capacity", 8 
.AddItem "interactivity", 9 
End With 
End Sub 

VBA 예 2 :

Private Sub ComboBox1_DropButtonClick() 
ComboBox1.Clear 
With ComboBox1 
.AddItem " ", 0 
.AddItem "speed", 1 
.AddItem "provisionality", 2 
.AddItem "automation", 3 
.AddItem "replication", 4 
.AddItem "communicability", 5 
.AddItem "multi-modality", 6 
.AddItem "non-linearity", 7 
.AddItem "capacity", 8 
.AddItem "interactivity", 9 
End With 
End Sub 

사람이 도와 드릴까요?

답변

4

DropButtonClick 이벤트에 코드가 있으므로 드롭 다운을 누를 때마다 해당 항목이 콤보 상자에 추가됩니다. 는 항목을 추가하기 전에 콤보 상자가 이미 채워져 있는지 확인하는 몇 가지 코드를 추가하십시오 :

Private Sub ComboBox1_DropButtonClick() 

    If ComboBox1.ListCount = 0 Then 
     With ComboBox1 
      .AddItem " ", 0 
      .AddItem "speed", 1 
      .AddItem "provisionality", 2 
      .AddItem "automation", 3 
      .AddItem "replication", 4 
      .AddItem "communicability", 5 
      .AddItem "multi-modality", 6 
      .AddItem "non-linearity", 7 
      .AddItem "capacity", 8 
      .AddItem "interactivity", 9 
     End With 
    End If 

End Sub 

는 그런 다음 콤보 상자를 취소하고 그와 함께 선택한 항목을 취소 할 필요가 없습니다.

관련 문제