Nhờ hỗ trợ đoạn VBA copy gạch chân sang ABCD

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

thaibaoanh

Thành viên mới
Tham gia
4/7/23
Bài viết
13
Được thích
1
1689570814912.png
Nhờ mọi người đoạn code VBA làm việc sau:
Khi gạch chân 4 từ trong đoạn văn(thường là câu hỏi), đặt con trỏ trong đoạn đó, chạy code thì code sẽ copy 4 từ đặt theo thứ tự vào các phương án A,B,C,D(có đặt tab)
 
Lần chỉnh sửa cuối:
Cứ mỗi lần thấy loại A,B,C,D mà dân ra bài cho làm "tự động" như thế nảy lại cảm thấy thương học sinh. Mình thì học té đái, người ra đề thì lại lười biếng chỉ muốn tự động. Gặp thằng ra đề code dốt một chút, hỏng bét cả bài.

(*) Giáo dục cái giống gì lười như hủi, ra bài thi cũng nhờ người khác làm giùm.
 
Cứ mỗi lần thấy loại A,B,C,D mà dân ra bài cho làm "tự động" như thế nảy lại cảm thấy thương học sinh. Mình thì học té đái, người ra đề thì lại lười biếng chỉ muốn tự động. Gặp thằng ra đề code dốt một chút, hỏng bét cả bài.

(*) Giáo dục cái giống gì lười như hủi, ra bài thi cũng nhờ người khác làm giùm.
Haha. Cũng hỏi để giúp thầy thôi.
 
Lần chỉnh sửa cuối:
Lúc được lúc sai:
Mã:
Sub hotrochuyenkieudapangachchan_tienganh()
Application.UndoRecord.StartCustomRecord ("QUAY LAI")
'On Error Resume Next
Dim ra As Range
Set ra = Selection.Range
If Len(ra) < 3 Then
MsgBox "ban chua boi den cau hoi"
Exit Sub
End If
ra.Find.ClearFormatting
ra.Find.Font.Underline = wdUnderlineSingle
ra.Find.Replacement.ClearFormatting
With ra.Find
.Text = " "
.Replacement.Text = "daucach"
.Forward = True
.Wrap = wdFindStop
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Application.DisplayAlerts = False
ra.Find.Execute Replace:=wdReplaceAll
'TIM DEN DAP AN
ra.Find.ClearFormatting
ra.Find.Font.Bold = True
ra.Find.Replacement.ClearFormatting
With ra.Find
.Text = "([A-D])"
.Replacement.Text = "DAPAN\1"
.Forward = True
.Wrap = wdFindStop
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = True
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
ra.Find.Execute Replace:=wdReplaceAll
Dim tu As Range, coll As New Collection, r As Range, para As Paragraph
For Each para In Selection.Paragraphs
If InStr(para.Range.Text, "DAPAN") > 0 Then
para.Range.Delete
End If
Next para
Set r = Selection.Range
For Each tu In Selection.Words
If tu.Words(1).Font.Underline = wdUnderlineSingle Then
coll.Add tu.Words(1)
End If
Next tu
r.InsertAfter "A. " & coll(1) & vbTab & "B. " & coll(2) & vbTab & "C. " & coll(3) & vbTab & "D. " & coll(4) & vbCr
r.Select
'dat tab
Selection.ParagraphFormat.TabStops.ClearAll
ActiveDocument.DefaultTabStop = InchesToPoints(0.5)
Selection.ParagraphFormat.TabStops.Add Position:=InchesToPoints(1.88), _
Alignment:=wdAlignTabLeft, Leader:=wdTabLeaderSpaces
Selection.ParagraphFormat.TabStops.Add Position:=InchesToPoints(3.63), _
Alignment:=wdAlignTabLeft, Leader:=wdTabLeaderSpaces
Selection.ParagraphFormat.TabStops.Add Position:=InchesToPoints(5.25), _
Alignment:=wdAlignTabLeft, Leader:=wdTabLeaderSpaces
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
Selection.Find.Replacement.Font.Underline = wdUnderlineSingle
With Selection.Find
.Text = "daucach"
.Replacement.Text = " "
.Forward = True
.Wrap = wdFindStop
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Application.DisplayAlerts = wdAlertsAll
Selection.Find.Execute Replace:=wdReplaceAll
Selection.Paragraphs(Selection.Paragraphs.Count).Range.Select
Selection.Font.Underline = wdUnderlineNone
Selection.Font.Bold = True
If Selection.Font.Italic = True Then
Selection.Font.Italic = wdToggle
End If
Selection.Font.Color = wdColorBlack
Application.UndoRecord.EndCustomRecord
End Sub
 
Mỗi người có sở trường riêng không thể biết và giỏi tất cả lĩnh vực, nhiều Thầy Cô dạy văn và ngoại ngữ nhất là người lớn tuổi thường không rành tin học. Thương Thầy Cô ngồi mổ cò, mắt dí sát màn hình dò từng dòng, thao tác lúc được lúc không . . . học trò tự nguyện giúp đỡ là việc nên làm
 
Mỗi người có sở trường riêng không thể biết và giỏi tất cả lĩnh vực, nhiều Thầy Cô dạy văn và ngoại ngữ nhất là người lớn tuổi thường không rành tin học. Thương Thầy Cô ngồi mổ cò, mắt dí sát màn hình dò từng dòng, thao tác lúc được lúc không . . . học trò tự nguyện giúp đỡ là việc nên làm
Nhờ học trò cũng được. Tuy nhiên yêu cầu chưa rõ rệt lắm. Lỗi tại "thầy" kém giễn giải hay "trò" làm tam sao thất bổn?

@thớt:
Cái chỗ dặt 4 từ là một mẫu. Cách dễ nhất là đặt nó vào một file "mau_4 tu.docx"
Copy cái mẫu này vào cuối đoạn văn. Xong copy từng từ.
Công việc tuy thủ công nhưng rất dễ kiểm soát so với cốt kiếc. Cỡ code phức tạp như bạn trình bày ở bài #5 trên mà đưa cho dân kém tin học thì chả khác nào đưa cho con nít khẩu Uzi.
 
Vẫn cho con trỏ trong câu hỏi và bấm Ctrl+Shift+T
 

File đính kèm

  • TaoDapAn_thaibaoanh.rar
    18.8 KB · Đọc: 5
Web KT

Bài viết mới nhất

Back
Top Bottom