Bo Cong Anh old
Thành viên mới
- Tham gia
- 10/5/22
- Bài viết
- 4
- Được thích
- 0
Kết quả trả về excel như thế nào?#xin các bác chỉ giáo macro nào trong excel hoặc word để xử lý tình huống này với
Làm thế nào để lấy được dãy số phía sau CertifiedCode và chuyển thành 1 cột ở file excel ạ
Ví dụ trong trường hợp "CertifiedCode":"55E8006844" là lấy 55E8006844
Chỉ cần 1 cột chứa các mã đó là đcKết quả trả về excel như thế nào?
Tên nào cũng đc, cả hai tập tin ở cùng thư mục đi ạTên tập tin Excel là gì, cả 2 tập tin ở cùng thư mục hay gì?
Sub lay_so_reg()
Dim k As Long, text As String, ExcelFile As String, result(), re As Object, matches As Object, match As Object, ExcelApp As Object
text = ThisDocument.Content.text
Set re = CreateObject("VBScript.RegExp")
With re
.IgnoreCase = True
.Global = True
.Pattern = """CertifiedCode"":""(.+?)"""
End With
Set matches = re.Execute(text)
If matches.Count Then
ReDim result(1 To matches.Count, 1 To 1)
For Each match In matches
k = k + 1
result(k, 1) = match.SubMatches(0)
Next match
ExcelFile = ThisDocument.Path & "\hic hic.xlsx"
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = True
With ExcelApp.Workbooks.Open(ExcelFile)
.Worksheets(1).Range("A1").Resize(UBound(result, 1)).Value = result
End With
End If
Set re = Nothing
End Sub
Sub lay_so_find()
Dim k As Long, text As String, ExcelFile As String, result(), ExcelApp As Object
ReDim result(1 To 1000, 1 To 1)
Application.Selection.Start = 0
With Application.Selection.Find
.ClearFormatting
.text = """CertifiedCode"":""*"""
.MatchWildcards = True
Do While .Execute
k = k + 1
text = Application.Selection.text
text = Mid(text, InStr(1, text, ":") + 2)
result(k, 1) = Left(text, Len(text) - 1)
Loop
End With
If k Then
ExcelFile = ThisDocument.Path & "\hic hic.xlsx"
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = True
With ExcelApp.Workbooks.Open(ExcelFile)
.Worksheets(1).Range("A1").Resize(k).Value = result
End With
End If
End Sub
chân thành cám ơn pro hihiSub lay_so_find() Dim k As Long, text As String, ExcelFile As String, result(), ExcelApp As Object ReDim result(1 To 1000, 1 To 1) Application.Selection.Start = 0 With Application.Selection.Find .ClearFormatting .text = """CertifiedCode""*""" .MatchWildcards = True Do While .Execute k = k + 1 text = Application.Selection.text text = Mid(text, InStr(1, text, ":") + 2) result(k, 1) = Left(text, Len(text) - 1) Loop End With If k Then ExcelFile = ThisDocument.Path & "\hic hic.xlsx" Set ExcelApp = CreateObject("Excel.Application") ExcelApp.Visible = True With ExcelApp.Workbooks.Open(ExcelFile) .Worksheets(1).Range("A1").Resize(k).Value = result End With End If End Sub