条件が満たされた場合はセルの値を1に設定する必要があります。そうでない場合は、VBA-Excelの列の既存の値を1ずつ増やします。

user3729220

NameLoanAmountのsheet12つの列を持つテーブルと、Counterという追加の列持つ同様のテーブルがあります例:sheet2

Table in Sheet1        Table in Sheet2
Name    Loan Amount    Name    Loan Amount    Counter
Ajit    8000           Ajit    8000           2
Rahul   8001           Rahul   8001           3
Gaurav  8002           Gaurav  8002           4
varun   8003           Varun   8003           2
                       Nama    30004          2
                       Sutra   30005          4
                       Patra   30006          5
                       Pakhi   30007          6
                       Ratan   30008          5

場合Namesheet1との試合Nameに対応するで設定する必要があり、同じためまた、1に設定する必要があり、場合、両方のシートに一致していない中でそれらの名前のためにそれがでテーブルをもたらして1ずつインクリメントされなければならないようになります。sheet2Loan AmountNamesheet1sheet2NameCounterNameCountersheet2sheet2

Output Table in Sheet2
Name        Loan Amount      Counter,
Ajit            8000            1
Rahul           8001            1
Gaurav          8002            1
Varun           8003            1
Nama            30004           3
Sutra           30005           5
Patra           30006           6
Pakhi           30007           7
Ratan           30008           6

これを手伝ってください。VBAExcelでこの結果を達成するにはどうすればよいですか。これを達成するためにこれまでに行っていることを確認してください。ただし、名前が一致しない場合にカウンターを増やす方法がわかりません。

Private Sub CommandButton1_Click()
Dim i As Integer
Dim j As Integer
Dim Count1 As Integer
Dim Count2 As Integer
Count1 = Worksheets("Sheet1").Range("A1").CurrentRegion.Rows.Count
Count2 = Worksheets("Sheet2").Range("A1").CurrentRegion.Rows.Count
For i = 2 To Count1
    For j = 2 To Count2
        If Worksheets("Sheet1").Cells(i, 1).Value = Worksheets("Sheet2").Cells(j, 1).Value Then
        Worksheets("Sheet2").Cells(j, 2).Value = Worksheets("Sheet1").Cells(i, 2).Value
        Worksheets("Sheet2").Cells(j, 3).Value = 1
        End If
    Next j
Next i
End Sub

しかし、両方のシートで名前が一致しないセル値をインクリメントする方法がわかりません。

ジャガディッシュ・ダビル

更新しました :

あなたのエラーとテストに従って


Private Sub CommandButton1_Click()
  Dim i As Integer 's
Dim j As Integer
Dim Count1 As Integer
Dim Count2 As Integer
Dim cell As Range
Count1 = Worksheets("Sheet1").Range("A1").CurrentRegion.Rows.Count
Count2 = Worksheets("Sheet2").Range("A1").CurrentRegion.Rows.Count
For i = 2 To Count1

    For j = 2 To Count2
        If Worksheets("Sheet1").Cells(i, 1).Value = Worksheets("Sheet2").Cells(j, 1).Value Then
          Worksheets("Sheet2").Cells(j, 2).Value = Worksheets("Sheet1").Cells(i, 2).Value
          Worksheets("Sheet2").Cells(j, 3).Value = 0

          Exit For
        End If

    Next j



Next i

For Each cell In Range("C2:" & "C" & Cells(Rows.Count, "C").End(xlUp).Row)
cell.Value = cell.Value + 1
Next
End Sub

問題が発生した場合はお知らせください。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ