Hi all,
My macro takes values from an excel spreadsheet and pastes them into bookmarks on a word document template. It then saves it as a word document - however my clients have requested to start sending the statements in pdf. I have the Acrobat add-in installed but cannot figure out the code to SaveAs a pdf. I have a feeling this is a very simple fix but I can't figure it out
This is all being done in Office 2010 by the way!
[vba]
'CREATES MARGIN LETTERS
'************************************************************************** ************
If CallRequirement > 0 Or IntMarginCallRec > 0 Then
If LegalEntity = "GroupInc" Then FilePath = "\\01\Treasury Shared\ALM\Derivative Collateral\Templates\Inc\"
If LegalEntity = "Bank" Then FilePath = "\\01\Treasury Shared\ALM\Derivative Collateral\Templates\Bank\"
FileName = BankName & " Margin Call.dotx"
Set oWA = New Word.Application
Set oWD = oWA.Documents.Add(FilePath & FileName)
'oWD.Application.Visible = True
' ^TOGGLE WORD APP VISIBILITY^
ActiveDocName = oWD.Name
'PASTES VALUES INTO BOOKMARKS IN THE MARGIN LETTER TEMPLATES
'************************************************************************** ************
'FOR BANK TEMPLATES
If LegalEntity = "Bank" Then
oWD.Bookmarks("StatementDate").Range.Text = WorksheetFunction.Text(Cells(RowNum - MondayAdjustment, 1), "dddd, MMMM dd, yyyy")
oWD.Bookmarks("ValueDate").Range.Text = WorksheetFunction.Text(Cells(RowNum, 1), "dddd, MMMM dd, yyyy")
oWD.Bookmarks("MTMValue").Range.Text = WorksheetFunction.Text(Cells(RowNum, 2), "$#,##0.00_);($#,##0.00)")
oWD.Bookmarks("TotalRequirement").Range.Text = WorksheetFunction.Text(Cells(RowNum, 2), "$#,##0.00_);($#,##0.00)")
oWD.Bookmarks("ValueofHeldCollateral").Range.Text = WorksheetFunction.Text(Cells(RowNum, 3), "$#,##0.00_);($#,##0.00)")
oWD.Bookmarks("NetExcessDeficit").Range.Text = WorksheetFunction.Text(Cells(RowNum, 4), "$#,##0.00_);($#,##0.00)")
oWD.Bookmarks("CallRequirement").Range.Text = WorksheetFunction.Text(Cells(RowNum, 5), "#,##0.00_);(#,##0.00)")
'FOR GROUP INC TEMPLATES
ElseIf LegalEntity = "GroupInc" Then
'ALL BANKS ASIDE FROM CITIBANK
oWD.Bookmarks("StatementDate").Range.Text = WorksheetFunction.Text(Cells(RowNum - MondayAdjustment, 1), "dddd, MMMM dd, yyyy")
oWD.Bookmarks("ValueDate").Range.Text = WorksheetFunction.Text(Cells(RowNum, 1), "dddd, MMMM dd, yyyy")
oWD.Bookmarks("MTMValue").Range.Text = WorksheetFunction.Text(Cells(RowNum, 2), "$#,##0.00_);($#,##0.00)")
oWD.Bookmarks("CallRequirement").Range.Text = WorksheetFunction.Text(Cells(RowNum, 7), "#,##0.00_);(#,##0.00)")
oWD.Bookmarks("TotalRequirement").Range.Text = WorksheetFunction.Text(Cells(RowNum, 4), "$#,##0.00_);($#,##0.00)")
If BankName <> "Morgan Stanley" Then oWD.Bookmarks("InitialMargin").Range.Text = WorksheetFunction.Text(Cells(RowNum, 3), "$#,##0.00_);($#,##0.00)")
If BankName <> "Citibank" Then oWD.Bookmarks("NetExcessDeficit").Range.Text = WorksheetFunction.Text(Cells(RowNum, 6), "$#,##0.00_);($#,##0.00)")
If BankName <> "Citibank" Then oWD.Bookmarks("ValueofHeldCollateral").Range.Text = WorksheetFunction.Text(Cells(RowNum, 5), "$#,##0.00_);($#,##0.00)")
'CITIBANK ONLY
If BankName = "Citibank" And IntMarginCallRec > 0 Then oWD.Bookmarks("IACallRequirement").Range.Text = WorksheetFunction.Text(IntMarginCallRec, "#,##0.00_);(#,##0.00)")
If BankName = "Citibank" And Cells(RowNum, 7) > 0 Then oWD.Bookmarks("MTMCallRequirement").Range.Text = WorksheetFunction.Text(Cells(RowNum, 7), "#,##0.00_);(#,##0.00)")
If BankName = "Citibank" Then oWD.Bookmarks("InitialMarginHeld").Range.Text = WorksheetFunction.Text(Cells(RowNum - 1, 3), "#,##0.00_);($#,##0.00)")
If BankName = "Citibank" Then oWD.Bookmarks("InitialMarginRequired").Range.Text = WorksheetFunction.Text(Cells(RowNum, 3), "#,##0.00_);($#,##0.00)")
If BankName = "Citibank" Then oWD.Bookmarks("NetExcessDeficit").Range.Text = WorksheetFunction.Text(Cells(RowNum, 5), "$#,##0.00_);$#,##0.00")
If BankName = "Citibank" Then oWD.Bookmarks("ValueofHeldCollateral").Range.Text = WorksheetFunction.Text(Cells(RowNum, 4), "$#,##0.00_);($#,##0.00)")
'*******************************************************************
'*******************************************************************
'*******************************************************************
'*******************************************************************
'**********THIS IS WHERE I NEED TO SAVE AS A .PDF - I CAN ONLY FIGURE OUT HOW TO SAVE AS A WORD DOC**************
'SAVES THE MARGIN LETTERS IN APPROPRIATE LOCATION
If LegalEntity = "GroupInc" Then oWD.SaveAs FileName:="\\01\Treasury Shared\ALM\Derivative Collateral\Counterparty Folders\Inc\" & BankName & "\Margin Calls\" & BankName & " Margin Call " & WorksheetFunction.Text(CallDate, "[$-409]yyyy-mm-dd") & ".docx"
If LegalEntity = "Bank" Then oWD.SaveAs FileName:="\\01\Treasury Shared\ALM\Derivative Collateral\Counterparty Folders\Bank\" & BankName & "\Margin Calls\" & BankName & " Margin Call " & WorksheetFunction.Text(CallDate, "[$-409]yyyy-mm-dd") & ".docx"
End If
'CLOSES MICROSOFT WORD
oWD.Close (0)
oWA.Quit
Set oWD = Nothing
Set oWA = Nothing
End If
[/vba]