1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| Public Sub Edit_Word_Document()
Dim wordApp As Word.Application
Set wordApp = CreateObject("word.Application")
Dim wordDocument As Word.Document
'''change path
Dim experience As String
'''Change this part, loop through excel, replace mytext
Dim i As Integer
For i = 2 To ActiveSheet.Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row
bodymessage = ""
bodymessage1 = ""
bodymessage2 = ""
bodymessage3 = ""
If LCase(ActiveSheet.Cells(i, 8)) = "dnm" And ActiveSheet.Cells(i, 1) <> "" Then
wordApp.documents.Open "C:\Users\riadh.said@cic.gc.ca\Desktop\Template.docx"
Set wordDocument = wordApp.ActiveDocument
Set wordDocument = wordApp.ActiveDocument
If LCase(Cells(i, "D").Value) = "dnm" Then
bodymessage = vbNewLine & Sheets("lien").Range("B9").Value
End If
If LCase(Cells(i, "E").Value) = "dnm" Then
bodymessage1 = vbNewLine & Sheets("lien").Range("B10").Value
End If
If LCase(Cells(i, "F").Value) = "dnm" Then
bodymessage2 = vbNewLine & Sheets("lien").Range("B11").Value
End If
If LCase(Cells(i, "G").Value) = "dnm" Then
bodymessage3 = vbNewLine & Sheets("lien").Range("B12").Value
End If
experience = bodymessage & bodymessage1 & bodymessage2 & bodymessage3
wordDocument.Content.Find.Execute FindText:="VariableToReplace", ReplaceWith:=experience, Replace:=wdReplaceAll
wordDocument.SaveAs "C:\Users\riadh.said@cic.gc.ca\Desktop\" & ActiveSheet.Cells(i, 1).Value & ", " & ActiveSheet.Cells(i, 2).Value & ".pdf", 17
End If
Next
End Sub |
Partager