2016-12-16 2 views
0

私は、1つのコンボボックス、テキストボックス、およびイメージボタンが付いたコマンドボタンを持つ小さなユーザーフォームを持っています。 enter image description here列2に対する列1の値を一致させるコード

シート1には、下に画像が添付されたテーブルが1つあります。私は、ユーザーフォームのコマンドボタンを押したときに、列1が値を持っている場合は私がしたいこと、それは、たとえば、列の値に対してたび を2

を列1の値をチェックする必要がありますされ enter image description here

"Non Current Assets"で、カラム2の値が "PPE"の場合、msgboxは "Value Exist"と表示されます。

コードは、カラム1の値1とカラム2の値1を確認する必要があります。 の場合、msgboxには "値が存在しません"と表示されます。

BLOCKQUOTE

Private Sub CommandButton1_Click() 
'Declaring the Variables 
Dim ws As Worksheet, tbl As ListObject, row As ListRow 
Dim value1 As String, value2 As String 
Dim rng1 As Range, rng2 As Range 

Set ws = Sheets("Sheet1") 
Set tbl = ws.ListObjects("Table1") 

ws.Unprotect Password:="google" 

Set rng1 = tbl.ListColumns(1).DataBodyRange 
Set rng2 = tbl.ListColumns(2).DataBodyRange 

value1 = LCase(Me.ComboBox1.Value) 
value2 = LCase(Me.TextBox1.Value) 

'Loop to Check for the Group Head Existence 
If Not rng1 Is Nothing Then 
For Each rng1 In rng1 
    If LCase(rng1.Value) = value1 Then 
     For Each rng2 In rng2 
      If LCase(rng2.Value) = value2 Then 
      MsgBox ("Value Exist.") 
      Exit Sub 
     Else 
      MsgBox ("Value not Exist") 
      Unload Me 
      Exit Sub 
      End If 
    Next rng2 
End If 
Next rng1 
End If 
End Sub 

コードがcolumn2の中をvalue1に対するCOLUMN1のVALUE1をチェックされていません。

は、ここに私のコードです。

よろしくお願いします。

+0

"コードが列1の値1と列2の値1をチェックしていません。"それは何をしていますか? –

+0

列2の値のみを読み込みます。 –

答えて

2

ないRNG1は、あなたが代わりに

For Each rng1 In rng1 

を行うことはできませんThenステートメント

For Each cell In rng1 
     If LCase(cell.Value) = value1 and LCase(cell.offset(0,1).Value)=value2 Then 
       MsgBox ("Value Exist.") 
       Exit Sub 
     Else 
       MsgBox ("Value not Exist") 
       Unload Me 
       Exit Sub 
     End If 
    Next 
+0

ありがとうThevar。それは働いています... –

+0

Thevar、それは最初の行だけをチェックしています。ただし、他の値はチェックしていません。 –

+0

else文のコードを削除して、statemet MsgBox( "値は存在しません")の後に次のコードを使用することができます Unload Me Exit Sub –

0

何もない場合は、あなたが

dim cel as range 

for each cel in rng1 
のように、RNG1にループスロー細胞に持た内で次のコードを使用します

同じこと

For Each rng2 In rng2 

関連する問題