2012-01-27 142 views
1

我有3000張發票的印刷品,其中有產品的詳細信息和經銷商的名稱。 SAP的銷售數據已經出口到excel進行分析。但不幸的是,在每張發票的導出數據中找不到經銷商的名稱。因此,我決定在每張發票上加入經銷商的名稱。 爲此,我已將Combobox控件嵌入到包含銷售數據的工作表中,我已將其加載到所有經銷商的名稱中。組合框控件的點擊事件

單元格(1,1)中的組合控件的左側,我輸入發票號碼並選擇相應的經銷商,如Combo控件的發票硬拷貝所述,以便通過點擊名稱經銷商的姓名打印在下一欄的發票號碼上。爲此,我在Combobox1_ Click事件中寫入了以下宏。

Sub Combobox1_Click() 
For i = 5 to 3000 
If cells(1,1).value = Cells(i,4).value then 
Cells(i,5).value = Combobox1.Text 
End if 
Next 

只要我爲每個點擊事件選擇不同的經銷商,這工作正常。但是,當我連續兩次選擇相同的經銷商時,點擊事件不會被觸發,並且經銷商的名稱不會在第二個實例中打印。

爲了清楚地說明發票1233的要點,我選擇了經銷商X並且姓名X根據發票1233打印。下一張發票1244也屬於經銷商X並且在單元(1,1)中輸入1244後我選擇相同的delaer X,該名稱X多年平均值獲得對印刷發票1244

請告訴我解決問題

+0

我不明白你的意思嗎? – 2012-01-27 14:25:02

+0

對不起,我不知道這是因爲我對於stackoverflow很新。 – 2012-01-27 15:06:30

+0

既然你已經刪除了大寫,我將刪除我的評論(你也可以刪除你的評論)。 – Tomalak 2012-01-27 17:47:44

回答

2

因爲控制未檢測到變化不被觸發Click事件。

ComboBox1.Text = "Select Dealer" 

或更改,只有當您搬走從控制,通過增加此事件的組合框顯示文本:您可以通過更改其顯示值或者通過在點擊事件的末尾添加該代碼重置控制:

Private Sub ComboBox1_LostFocus() 
    ComboBox1.Text = "Select Dealer" 
End Sub 
+0

+1我剛剛建議完全一樣的東西。 :) – Tomalak 2012-01-27 17:45:44

+0

非常感謝您的解決方案 – 2012-01-28 14:00:42