Microsoft Office Forums

Go Back   Microsoft Office Forums > >

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #5  
Old 03-05-2020, 11:32 PM
macropod's Avatar
macropod macropod is offline Create a Word Document with VBA Windows 7 64bit Create a Word Document with VBA Office 2010 32bit
Administrator
 
Join Date: Dec 2010
Location: Canberra, Australia
Posts: 22,467
macropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond reputemacropod has a reputation beyond repute
Default

Quote:
Originally Posted by SamDsouza View Post
I Did understand the irritating and Frustrating the boilerplate part.
though i could have created the Template and coded but this time i wanted to enjoy the
food out of the boilerplate
With your guidance Shall learn something new all together in different manner
Well, if you're going to code the boilerplate text, you might as well do it efficiently. Your code has numerous redundant lines. Try:
Code:
Public Sub msWord_Structure()
Dim wdApp As Object, wdDoc As Object, wdTbl As Object, wdRng As Object, chqNobold As String, StrTxt As String
Dim custNameLen As Long, RefAcNoLen As Long, chqNoLen As Long, MyContactNosLen As Long
Const wdCollapseEnd As Long = 0
Const wdAlignParagraphCenter As Long = 1
Const wdAlignParagraphJustify As Long = 3

chqNobold = txtChqNo.Text
custNameLen = (17 + Len(cmbMyCustName.Text))
RefAcNoLen = (14 + Len(txtRefAcNo.Text))
chqNoLen = (11 + Len(chqNobold))
MyContactNosLen = (11 + Len(txtMyContactNos.Text))

StrTxt = vbCr & "Time " & txtTime.Text & vbCr & vbCr & _
  "Customer Name : " & cmbMyCustName.Text & vbCr & vbCr & _
  "Account No. " & txtRefAcNo.Text & " Chq No. " & txtChqNo.Text & vbCr & vbCr & _
  "Mobile No" & txtMyContactNos.Text & " Tel No." & vbCr & vbCr & _
  "Address of Remitter (Mandatory for Non IDBI Bank Customer)___________________________________" & vbCr & vbCr & _
  "__________________________________________" & " Email ID ______________________________________________" & vbCr & vbCr & _
 vbCr & vbCr & " Incase of NonIDBI Bank Customer Amount of Cash Deposited _____________________________________" & vbCr & vbCr '& " Beneficiary Details :"

On Error Resume Next
Set wdApp = GetObject(, "Word.Application")
If Err Then Set wdApp = CreateObject("Word.Application")
On Error GoTo 0
wdApp.Visible = True

Set wdDoc = wdApp.Documents.Add
With wdDoc.Range
  .Font.Name = "Tahoma"
  .Font.Size = 12
  .Paragraphs.SpaceAfter = 0
  .ParagraphFormat.Alignment = wdAlignParagraphJustify
  .Text = "RTGS/ Request Form" & vbCrLf & vbCrLf & _
      Chr(144) & "RTGS                             " & Chr(144) & "" & _
      vbCrLf & vbCrLf & "For RTGS" & vbCr
  With .Paragraphs(1).Range
    .Font.Size = 16
    .Font.Underline = True
    .ParagraphFormat.Alignment = wdAlignParagraphCenter
  End With
  .Paragraphs.Last.Previous.Range.Font.Underline = True
  Set wdTbl = .Tables.Add(.Characters.Last, 4, 2)
  With wdTbl
    .Columns(1).Width = 300
    .Columns(2).Width = 130
    .Borders.Enable = True
    .Rows.HorizontalPosition = 5
    .Rows.VerticalPosition = 10
    With .Cell(1, 1)
      .Merge wdTbl.Cell(1, 2)
      .Range.Text = "Maximum Limit For Transaction"
      .Range.ParagraphFormat.Alignment = wdAlignParagraphCenter
    End With
    With .Cell(2, 1).Range
      .Text = "IDBI Bank Customer"
      .ParagraphFormat.Alignment = wdAlignParagraphJustify
    End With
    With .Cell(2, 2).Range
      .Text = "No Limit"
      .ParagraphFormat.Alignment = wdAlignParagraphJustify
    End With
    With .Cell(3, 1).Range
      .Text = "Non IDBI Bank Customer & Indo Nepal Remittance"
      .ParagraphFormat.Alignment = 3
    End With
    With .Cell(3, 2).Range
      .Text = "Up to INR 50,000/-"
      .ParagraphFormat.Alignment = wdAlignParagraphJustify
    End With
    With .Cell(4, 1).Range
      .Text = "Purpose of Remittance to Nepal - Family Maintenance only"
      .ParagraphFormat.Alignment = wdAlignParagraphJustify
    End With
    With .Cell(4, 2).Range
      .Text = "Yes / No"
      .ParagraphFormat.Alignment = wdAlignParagraphJustify
    End With
  End With
  .InsertAfter StrTxt
  Set wdRng = .Paragraphs(18).Range
  With wdRng
    .Start = .Start + 5
    .End = .End - 1
    .Font.Bold = True
  End With
End With
End Sub
Quote:
Originally Posted by SamDsouza View Post
After Para 14 somehow it does not detect as Paragraph. the issue lies here.

By the way i checked "Time" was at paragraphs 17 with the following threadVBA Express : Word - Get Line and Paragraph Number

And with above only i put the paragraph as 17 as per coding in #1 but was unsuccessfull
Without wanting to place too fine a point on it, your code was trying to modify the paragraph before you'd created it (i.e. you hadn't written 'txtword' to the document)...
__________________
Cheers,
Paul Edstein
[Fmr MS MVP - Word]
Reply With Quote
 



Similar Threads
Thread Thread Starter Forum Replies Last Post
Create a Word Document with VBA How do I create an index of every word in a document? jbengal Word 5 11-23-2022 02:17 PM
Create a Word Document with VBA Can I create word wizards with Word 2016 to automate document creation? OkiDoki Word 4 09-30-2016 11:41 AM
Create a Word Document with VBA Word 2010 - How to create a fillable document from a boilerplate document sheaters Word 2 05-04-2016 01:57 PM
How to create a special TOC in word document? gn4619 Word VBA 5 04-29-2015 04:25 PM
How to identify whether Word 2007 was used to create a document saved as Word 2003 noviceatwork Word 0 03-08-2012 06:40 AM

Other Forums: Access Forums

All times are GMT -7. The time now is 10:53 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Search Engine Optimisation provided by DragonByte SEO (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
MSOfficeForums.com is not affiliated with Microsoft