[Hỏi, nhờ trợ giúp] Format có điều kiện

hieu2031998

Yêu THVBA
Mình muốn format có điều kiện nhưng điều kiện nằm tại ô khác để phục vụ làm đề trắc nghiệm.
Cụ thể: Mình muốn lấy điều kiện tại ô nằm dưới chứa nội dung "Hướng dẫn giải" là "Chọn D" để gạch chân cho đáp án đúng là D. Mong admin và các bạn trợ giúp ạ. Mình xin cảm ơn. File đính kèm ở dưới mọi người xem giúp mình ạ.
 

vbano1

SMod
Thành viên BQT
Thường thì mọi người không muốn bàn ý tưởng kiểu này.
1. Người không biết code thì đưa file input và output mong muốn. Mọi người code giúp.
Anh chị không biết code thì không cần nói gì nhiều, đưa file input và output mong muốn. Nói yêu cầu một cách trực quan dễ hiểu.
2. Người có khả năng code nhưng bí hướng đi. Khi đó mọi người chỉ bàn luận dưới dạng ý tưởng.
3. Đối với trường hợp vừa không có khả năng code, vừa bí ý tưởng. Đây là trường hợp ngại giúp nhất. Không có file input nên không code được.
Do còn ở dạng ý tưởng nên file input không có gì chắc chắn, vài hôm lại thay đổi, lại lên hỏi hoặc nhờ code lại.

Vậy không biết bạn đang ở trường hợp nào.
Nếu là trường hợp 2, bí ý tưởng. Thì tôi thấy từ dòng Chọn D( hay Chọn A,....) thì dòng đáp án A luôn ở phía trên nó 5 dòng. Dòng đáp án B luôn ở trên dòng này 4 dòng...
Bạn cần đăng nhập để thấy hình ảnh

Vậy chỉ cần xác định dòng sau Hướng dẫn giải là chọn A, hay B,... là biết phải gạch chân ở dòng nào.
Nếu bạn gặp khó khăn về gõ tiếng việt thì bạn tham khảo topic sau:
Nếu bạn hoàn toàn không biết code, trong khi Tool hỗ trợ đã có bên ngoài, bạn chỉ đơn thuần muốn học hỏi code, tôi nghĩ việc tìm tới trung tâm nào đó sẽ hợp lý hơn. Còn nếu bạn muốn thuê code, anh em diễn đàn xin rất sẵn lòng.
 

NgayChuNhat

Yêu THVBA
Theo hướng dẫn của Smod @vbano1 mình đã code được 1 đoạn. Newbie nên nhờ mọi người chỉ bảo thêm:

Mã:
Sub FormatCoDieuKien()

Dim i As Integer
Dim b As String
Dim c As String
Dim answer As String
c = Cells(1, 26).Value
lastrow = Sheets(1).Cells(Rows.Count, 1).End(xlUp).Offset().Row
For i = 7 To lastrow Step 1
    b = Left(Range("A" & i), 4)
    answer = Right(Range("A" & i), 1)
        If b = c And answer = "A" Then
            Range("A" & i - 5).Characters(Start:=1, Length:=2).Font.Underline = xlUnderlineStyleSingle
        ElseIf b = c And answer = "B" Then
            Range("A" & i - 4).Characters(Start:=1, Length:=2).Font.Underline = xlUnderlineStyleSingle
        ElseIf b = c And answer = "C" Then
            Range("A" & i - 3).Characters(Start:=1, Length:=2).Font.Underline = xlUnderlineStyleSingle
        ElseIf b = c And answer = "D" Then
            Range("A" & i - 2).Characters(Start:=1, Length:=2).Font.Underline = xlUnderlineStyleSingle
        End If
    Next i
End Sub
 
Top