2015-09-28 32 views
0

我試圖將結果從ListBox1放置到特定的單元格K29K35,在工作表'Calculation Entry'中。我擁有它可以突出顯示多個選擇,但我需要提取這些選擇並將它們放入所述的單元格中。Listbox在單元格中選擇的值的位置

它們來自另一個工作表中單元格填充的列表框。我已經創建並填充了列表框,但無法將所選項目中的文本移動到上面列出的單元格。

我正在尋找的幫助是VBA的代碼,以便與ListBox1綁定,並使用ListBox1_Click()激活。

我已經彌補這一點,我將這段代碼爲每一位朋友的要求:

Range("K27").Select 
dim msg as String 
dim ary(100) as string 
ActiveCell.Clear 
With ListBox1 
    For i = 0 To .ListCount - 1 
     If .Selected(i) Then 
      msg = msg & .List(i) & vbNewLine 
      ary(j) = .List(i) 
      j = j + 1 
     End If 
    Next i 
    Range("K27").Select 
    ActiveCell.Offset(rowOffset:=0, columnOffset:=0).Activate 
End With 
If msg = vbNullString Then 
    MsgBox "Nothing was selected! Are you sure that you don't want to replace any parts?!" 
    Exit Sub 
Else Check = MsgBox("You selected:" & vbNewLine & msg & vbNewLine & "Are these selections correct?", vbYesNo + vbInformation, "Please confirm") 
Worksheets("Calculation Entry").Activate ActiveCell.Value = msg 
end if 
+0

你可以請分享你到目前爲止的代碼嗎? – MiguelH

+0

我很欣賞你們每個人的意見!我改變了它,所以我使用了一個isnumber(搜索(在我用來處理這些值的單元格中的函數,所以我將單元格範圍壓縮到了一個單元格中,我添加了以下代碼: – gabrieljg

+0

範圍(「K27」)。 ActiveCell.Clear 隨着ListBox1中 對於i = 0到.ListCount - 1 如果.Selected(I)然後 MSG = MSG&的.List(I)vbNewLine 進制(J)=的.List(ⅰ) Ĵ = J + 1 結束如果 下一個I 範圍( 「K27」)選擇 ActiveCell.Offset(rowOffset:= 0,columnOffset:= 0)。.Activate 結束隨着 如果MSG = vbNullString然後 MSGBOX「什麼也沒有選擇! 「 Exit Sub – gabrieljg

回答

0

我能得到這個由包括額外的控制工作...

我最簡單的方法可以看到解決這個問題的方法是在ListBox中包含一些描述性文本(「選擇所需的項目並單擊'Go'」),然後在標題「Go」中包含一個命令按鈕(Cmd_go)。這個按鈕有邏輯...

Private Sub Cmd_Go_Click() 
    ListBox1_Click 
End Sub 
相關問題