ngaykhongem1
Thành viên chính thức


- Tham gia
- 14/4/12
- Bài viết
- 50
- Được thích
- 2
Option Explicit
Public Sub Sosanh_GPE()
Dim i, j, m
Dim col_B, col_E
Dim chucaicuoi As String
For i = 2 To WorksheetFunction.CountA(Sheet1.Range("4:4"))
If Sheet1.Cells(5, i).Value > 0.95 Then
col_B = Sheet1.Cells(6, i).End(xlToLeft).Column
col_E = Sheet1.Cells(6, i).End(xlToRight).Column
For j = col_B To col_E - 1
If Sheet1.Cells(4, j).Value > Sheet1.Cells(4, col_B).Value Then
m = InStr(1, Sheet1.Cells(3, col_B).Value, "(", vbTextCompare)
chucaicuoi = Mid(Sheet1.Cells(3, col_B).Value, m + 1, 1)
Sheet1.Cells(4, j).Value = Sheet1.Cells(4, j).Value & chucaicuoi
Else
[COLOR=#ff0000] 'Cai phan nho hon minh chua hieu lam[/COLOR]
[COLOR=#ff0000] 'vi co the co nhieu hon 2 gia tri cung nho hon thi tinh the nao?[/COLOR]
End If
Next j
End If
Next i
End Sub
Mình chạy được rồi nhưng vẫn còn lỗi là nếu giá trị cột đem so sánh lớn hơn giá trị ở cột * thì ok nhưng ngược lại thì chương trình không chạy. Bạn xem lại giúp mình với.
Ý tôi là cái điều kiện nhỏ hơn ý.B1:Nếu dòng % lớn 0.95 thì làm tiếp bước 2 còn <0.95 thì không làm gì
B2òng GIATRI so sánh từ cột bắt đầu có dấu * và kết thúc bằng dấu * VD như trên thì sẽ so sánh 6 với 34 ; 32 so sánh với 7 và 3 so sánh với 7 ; 53 so sánh với 4 ; 5 so sánh với 4 ; 34 so với 64
Dòng GIATRI nếu so sánh thấy cột nào lớn hơn thì thêm vào cột đó chữ cái cuối của dòng header cột nhỏ hơn VD như trên 34>6 thì sẽ thành 34B ; 32>7 thành 32A , 7>3 thành 7C
@hoangvuluan: Bạn đoán chính xác ý của đề bài rồi đấy. Trong 1 bộ so sánh như bạn nói thì các ô còn lại được mang đi so sánh với ô có đánh dấu *
@nvson : cái điều kiện thì không phải bận tâm vì trong 1 bộ so sánh 3 như vậy mặc định lúc nào cũng chỉ có 1 điều kiện >0.95 thôi.
-- Mong các bạn hướng dẫn giúp mình với
như ví dụ của bạn thì ở cụm so sánh đó điều kiện >0.95 cột B giá trị 5 < cột có dấu * giá trị 7 thì ở cột giá trị 7 sẽ thành 7 B
@hoangvuluan: ở bộ so sánh 2 giá trị thì ok còn ở bộ so sánh giữa 3 giá trị thì vẫn còn bị lỗi bạn ơi. mà yêu cầu là sau khi chạy macro xong dữ liệu trên bảng đó sẽ thay đổi luôn hoặc xuất ra 1 sheet khác chứ không phải trích sang 1 bảng khác. Bạn xem lại giúp mình nhé!