2016-03-16 157 views
-1

我想用一個TextBox和一個CommandButton構建一個簡單的UserForm,它通過點擊空單元格中的一個特殊列(例如在列A ,單元格A1)在工作表內。當我輸入文本並點擊按鈕時,輸入的文本應粘貼到活動單元格(A1)中。Excel VBA-來自活動單元格中文本框的文本

用戶窗體的構建不是問題,而是它背後的動作。

你們知道如何解決這個問題嗎?甚至更好的代碼段?

在此先感謝!

+1

看工作表和控制的事件,因此一個按鈕的Click事件,那麼你就需要使用文字或組合框的值。一個小小的gooogling會解釋很多關於這個。 :) –

回答

0

下面是一段代碼,當您單擊單元格

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
    If Selection.Count = 1 Then 
     If Not Intersect(Target, Range("A1")) Is Nothing Then 
      'name of userform .Show 
     End If 
    End If 
End Sub 

凡代碼的註釋您需要的名字OOF您的用戶窗體,然後.Show

進入文本將運行,讓說A1如你所說,應該是:

Private Sub CommandButton1_Click() 

TextValue = TextBox1.Text 

[A1].Value = TextValue 

End Sub 

更改CommandButton1TextBox1,無論你將它們命名爲(如果你被點名了他們,你應該)

如果您有什麼需要澄清只是問

+0

感謝您的幫助!你有一個想法,如何在A的整個列中打開UserForm? '如果Selection.Count = 1然後 昏暗檢查由於布爾 校驗=真 如果支票然後 昏暗我只要 對於i = 1到100000 如果沒有相交(目標,範圍( 「A」 &i))的是Nothing然後 UserForm1.Show 檢查=假 結束如果 接下來 結束如果 結束If'這是我的主意,但它是非常緩慢的,當你有走線槽100000個細胞。 – qube13

+0

另一個問題是,如果有另一種將文本添加到單元格的方式,因爲如果我單擊整列中的一個單元格,我不知道,我要在哪裏單擊。我試圖將目標保存在一個公共變量中,但這不起作用。 – qube13

+0

那些將需要新的問題,評論arent足夠大,把這些答案,如果我的答案已經解決了你最初的問題,那麼請接受這個答案 –

相關問題