2016-11-02 3 views
-2

彼は自分が望むデータを選択したが、このデータをina MsgBoxではなくテーブルに表示したいと考えています。excel VBAを使用してユーザーフォームで選択したデータを表示する方法

は、これは私のコードで、私は誰かが私にあなたがリストボックスで必要なもの

Private Sub CommandButton1_Click() 

Dim ws1 As Worksheet 
Dim ws2 As Worksheet 

Dim table1 As Range 
Dim table2 As Range 

Dim table1Rows As Integer 
Dim table1Cols As Integer 

Set ws1 = Worksheets("Feuil1") 
Set ws2 = Worksheets("Feuil2") 
Set table1 = ws1.Cells 
Set table2 = ws2.Cells 

table1Rows = ws1.UsedRange.Rows.Count 
table1Cols = ws1.UsedRange.Columns.Count 

For i = 1 To table1Rows 
    For j = 1 To table1Cols 
     If table1(i, 1).Value <> table2(i, 1).Value Then 
      MsgBox "Libellé : " & table1(i, 1) & ", du montant : " & table1(i, 3) & " est ajouté !" 
     End If 
    Next 
Next 
End Sub 
+0

ユーザーフォーム、またはスプレッドシート内のある範囲の意味ですか? – Limak

+0

はい、私はUserFormを意味します。私はMsgBox内のすべてのデータを見ることができません – Yassine

+0

あなたはJループ変数を使用していません:あなたはそのループを取り除くか、それを使用しますか? – user3598756

答えて

0

のための解決策を見つけることができることを願っています。ユーザーフォーム(Userform1など)とリストボックス(Listbox1など)を作成します。次に、この式でデータを内部に置くことができます.AddItem関数。あなたのループは次のようになります:

For i = 1 To table1Rows 
    For j = 1 To table1Cols 
     If table1(i, 1).Value <> table2(i, 1).Value Then 
      UserForm1.ListBox1.AddItem "Libellé : " & table1(i, 1) & ", du montant : " & table1(i, 3) & " est ajouté !" 
     End If 
    Next 
Next 
End Sub 
UserForm1.Show 
+0

あなたの助言をありがとう、私は、ユーザーフォームを作成し、ListBoxを配置する方法を知っているが、私は自分のボタンをクリックしたときにデータを取得する方法がわからない – Yassine

+0

ボタンをクリックすると、 :http://stackoverflow.com/questions/10623704/how-can-i-tie-a-vba-macro-to-a-button-in-excelそうでない場合は、別のトピックの別の質問です。 1つを作成し、あなたの懸念を記述してください、誰かが助けてください。 – Limak

+0

それは知っている動作します。しかし、別の問題があります。笑、私のデータがありますが、彼らは4回繰り返しました。理由は分かりません。/ – Yassine

関連する問題