2012-01-27 6 views
1

商品の詳細と販売店の名前が記載された3000通のハードコピーがあります。 SAPからの販売データは、分析のためにExcelにエクスポートされています。しかし不幸にも、ディーラーの名前は各請求書に対する輸出データには見つかりません。したがって、私はディーラーの名前を各請求書に組み込むことに決めました。 これは私がすべてのディーラーの名前をロードした販売データを含むワークシートにコンボボックスコントロールを埋め込んだものです。コンボボックスコントロールのクリックイベント

セル内のコンボコントロールの左側にあるセル(1,1)は、請求書番号を入力し、コンボコントロールから請求書のハードコピーに記載されているように対応するディーラーを選択します。ディーラーの名前が次の列の請求書番号に対して印刷されます。これを行うために、私は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 

各クリックイベントごとに異なるディーラーを選択している限り、これは問題なく動作します。しかし、同じディーラーを連続して2回選択すると、クリックイベントは発生せず、ディーラーの名前は2番目のインスタンスでは印刷されません。

請求書1233に対してポイントを明確にするために、ディーラーXを選択し、請求書1233に対してXという名前が印刷されます。次の請求書1244は、ディーラーXに属し、1244をセル(1,1)私は私がコントロールが変更を検出していないので、クリックイベントがトリガされていない問題

+0

私はあなたの人が言っていることを得ていませんか? –

+0

申し訳ありませんが、私はこれを知っていませんでしたので、私は非常にstackoverflowに新しいです。 –

+0

大文字を削除したので、コメントを削除します(あなたも削除することができます)。 – Tomalak

答えて

2

を解決お知らせください名X doesnotがインボイス1244

に対して印刷を取得、同じdelaerのXを選択します。あなたは、クリックイベントの最後にこのコードを追加することにより、いずれかの表示値を変更することで、コントロールをリセットすることができます。

ComboBox1.Text = "Select Dealer" 

それとも、離れコントロールから移動する場合にのみ、このイベントを追加することで、コンボボックスの表示テキストを変更します。

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

+1私はちょうどまったく同じことを提案しようとしていた。 :) – Tomalak

+0

ありがとうございました。 –

関連する問題