Chào các Anh
Em học hỏi từ code của anh quanghai áp dụng cho chương trình của em
Hiện tại code chỉ dò tìm được có 1 sheet nay muốn dò tìm tất cả các sheet khi thay đổi mã số.
Code hiện tại
Code em chỉnh sữa áp dụng cho tất cả sheet nhưng không chạy
Em học hỏi từ code của anh quanghai áp dụng cho chương trình của em
Hiện tại code chỉ dò tìm được có 1 sheet nay muốn dò tìm tất cả các sheet khi thay đổi mã số.
Code hiện tại
Mã:
Private Sub CommandButton1_Click()
On Error Resume Next
Dim Arr(), i&, j&, c&, rng As Range
[F8:IO5000].ClearContents
Arr = Sheet7.Range("B2", [B65536].End(3)).Resize(, 250).Value
For i = 7 To UBound(Arr)
Set rng = Sheet5.[B:B].Find(Arr(i, 1), , , 1)
If Not rng Is Nothing Then
For j = 5 To UBound(Arr, 2)
c = Sheet5.Rows(3).Find(Arr(2, j), , , 1).Column - 2
Arr(i, j) = rng.Offset(, c) * Arr(i, 3)
Next
End If
Next
Sheet7.[B2].Resize(i - 6, 250) = Arr
End Sub
Mã:
[TABLE="width: 623"]
[TR]
[TD]Private Sub CommandButton1_Click()[/TD]
[/TR]
[TR]
[TD]On Error Resume Next[/TD]
[/TR]
[TR]
[TD]Dim Arr(), i&, j&, c&, rng As Range, Ws As Worksheet[/TD]
[/TR]
[TR]
[TD]For Each Ws In ThisWorkbook.Worksheets[/TD]
[/TR]
[TR]
[TD] If Ws.Name <> "KQ" Then[/TD]
[/TR]
[TR]
[TD][F8:IO5000].ClearContents[/TD]
[/TR]
[TR]
[TD]Arr = Ws.Range("B2", Ws.[B65536].End(3)).Resize(, 250).Value[/TD]
[/TR]
[TR]
[TD]For i = 7 To UBound(Arr)[/TD]
[/TR]
[TR]
[TD] Set rng = Ws.[B:B].Find(Arr(i, 1), , , 1)[/TD]
[/TR]
[TR]
[TD] If Not rng Is Nothing Then[/TD]
[/TR]
[TR]
[TD] For j = 5 To UBound(Arr, 2)[/TD]
[/TR]
[TR]
[TD] c = Ws.Rows(3).Find(Arr(2, j), , , 1).Column - 2[/TD]
[/TR]
[TR]
[TD] Arr(i, j) = rng.Offset(, c) * Arr(i, 3)[/TD]
[/TR]
[TR]
[TD] Next[/TD]
[/TR]
[TR]
[TD] End If[/TD]
[/TR]
[TR]
[TD]Next[/TD]
[/TR]
[TR]
[TD]Sheet7.[B2].Resize(i - 6, 250) = Arr[/TD]
[/TR]
[TR]
[TD]End If[/TD]
[/TR]
[TR]
[TD]Next[/TD]
[/TR]
[/TABLE]


