USING IRONWORD

How to Create Word Document Programmatically in VB .NET

Microsoft Word files, commonly known as DOCX files, are integral to document creation and communication in various industries. The ability to programmatically generate and manipulate Word documents is crucial for developers in Visual Basic.

In this article, we'll explore the importance of creating Microsoft Word files in C# applications and introduce the IronWord library as a powerful tool to generate Word Documents programmatically.

How to Create Word Document Programmatically in VB .NET

  1. Create a Visual Basic project in Visual Studio
  2. Install the IronWord Library from the NuGet Package Manager
  3. Create a TextRun and Paragraph
  4. Create a WordDocument ClassObject
  5. Add TextRun and Paragraph to WordDocument Object
  6. Export as a DOCX file using the SaveAs method

IronWord Library

IronWord is a feature-rich C# DOCX library developed by IronSoftware. It empowers developers to build, edit, and export Word documents without needing Microsoft Office or Word Interop. Supporting a range of .NET versions, IronWord provides a versatile solution for working with Word files in diverse project types and environments.

How to Create Word Document Programmatically in VB .NET: Figure 1 - IronWord webpage

Key Features:

IronWord offers a comprehensive set of features, making it a go-to library for Word document manipulation in C#. Some key features include:

  • Cross-Platform Support: Designed for C#, F#, and VB.NET, IronWord runs on various .NET versions, including 8, 7, 6, 5, Core, Standard, or Framework. It also caters to web, mobile, desktop, and console applications.

  • Document Structure Manipulation: IronWord allows developers to read and edit Word documents, extract text and images, customize page setup, and add paragraphs, text runs, images, shapes, and tables.

  • Styling and Formatting: The library supports styling options such as font family and size, color, bold, italic, underline, superscript, subscript, alignments, background color, and bullet/numbering lists.

  • Cross-Platform Compatibility: IronWord seamlessly works across different operating systems, including Windows, Linux, macOS, iOS, and Android.

Steps to Create a C# Console Project in Visual Studio

  1. Open Visual Studio.
  2. Create a new C# Console .NET Application.
  3. Name your project and choose a location.

How to Create Word Document Programmatically in VB .NET: Figure 2 - Configuring the project name and file path

  1. From Additional Information, select the latest version of the .NET Framework. IronWord supports the latest 8.0 .NET Core Framework.
  2. Click "Create" to generate the project.

Installing IronWord

To incorporate IronWord into your project to create a simple Word document, follow these steps:

Using the NuGet Package Manager

  1. Right-click on your project in Solution Explorer.
  2. Select "Manage NuGet Packages for Solution."
  3. Search for "IronWord" in the NuGet Package Manager browse tab.

How to Create Word Document Programmatically in VB .NET: Figure 3 - Installing IronWord in the NuGet package manager

  1. Click "Install" to add the IronWord library to your project.

Using Package Manager Console

Run the following command in the Package Manager Console:

Install-Package IronWord

Creating a Word Document in VB.NET

Let's go through a simple example to demonstrate how to create a Word document using IronWord in VB.NET:

Imports IronWord
Imports IronWord.Models

Module Program
    Sub Main()
        ' Create a text run containing the desired content
        Dim textRun As New TextRun("Sample text")

        ' Create a paragraph and add the text run to it
        Dim paragraph As New Paragraph()
        paragraph.AddTextRun(textRun)

        ' Create a new Word document containing the paragraph
        Dim document As New WordDocument(paragraph)

        ' Export the document as a DOCX file with the name "document.docx"
        document.SaveAs("document.docx")
    End Sub
End Module
Imports IronWord
Imports IronWord.Models

Module Program
    Sub Main()
        ' Create a text run containing the desired content
        Dim textRun As New TextRun("Sample text")

        ' Create a paragraph and add the text run to it
        Dim paragraph As New Paragraph()
        paragraph.AddTextRun(textRun)

        ' Create a new Word document containing the paragraph
        Dim document As New WordDocument(paragraph)

        ' Export the document as a DOCX file with the name "document.docx"
        document.SaveAs("document.docx")
    End Sub
End Module
VB .NET

Code Explanation

Let's break down the key components of this VB.NET code for creating a Word Document:

Importing the IronWord Namespace:

Imports IronWord
Imports IronWord.Models
Imports IronWord
Imports IronWord.Models
VB .NET

These lines import the necessary namespaces from the IronWord library to use the classes and Word document model in your VB.NET code.

Creating a TextRun and Paragraph:

Dim textRun As New TextRun("Sample text")
Dim paragraph As New Paragraph()
paragraph.AddTextRun(textRun)
Dim textRun As New TextRun("Sample text")
Dim paragraph As New Paragraph()
paragraph.AddTextRun(textRun)
VB .NET

Here, a TextRun is created with the content "Sample text," and a Paragraph is created to hold the TextRun. This sets up the document with the content structure of the Word document.

Creating a Word Document:

The following code creates a new document object and adds a text paragraph to it:

Dim document As New WordDocument(paragraph)
Dim document As New WordDocument(paragraph)
VB .NET

An instance of the WordDocument class is created, and the Paragraph is passed to its constructor. This initializes the Word document with the specified content.

Exporting the Document:

document.SaveAs("document.docx")
document.SaveAs("document.docx")
VB .NET

Finally, the SaveAs method is used to export the Word document as a DOCX file with the filename "document.docx."

Output:

Upon running the program, a Word File named "document.docx" will be generated in the project directory. Open this document to view the added content.

How to Create Word Document Programmatically in VB .NET: Figure 4 - Outputted PDF document from the previous code

IronWord provides simplicity and allows one to edit and manipulate specific paragraphs. To get more information on the methods involved in the document class, please visit this code examples page.

Conclusion

In this article, we explored the importance of creating Microsoft Word files in C# applications and introduced the IronWord library as a powerful tool for achieving this task. With its rich feature set, cross-platform support, and ease of integration into Visual Studio projects, IronWord simplifies the process of handling Word documents programmatically. Developers can leverage IronWord to enhance document processing capabilities and streamline creating and manipulating Word files in their C# applications.

For more detailed information about IronWord VB.NET and its capabilities, please visit its documentation page on IronWord's official website.

IronWord is free for development purposes and can be licensed to test out its complete functionality in commercial mode before deciding. Download the library from here and give it a try.

In this article, we explored the importance of creating Microsoft Word files in C# applications and introduced the IronWord library as a powerful tool for achieving this task. With its rich feature set, cross-platform support, and ease of integration into Visual Studio projects, IronWord simplifies the process of handling Word documents programmatically. Developers can leverage IronWord to enhance document processing capabilities and streamline creating and manipulating Word files in their C# applications.

Frequently Asked Questions

What is this library used for handling Word documents?

IronWord is a feature-rich C# DOCX library developed by IronSoftware, used to build, edit, and export Word documents without needing Microsoft Office or Word Interop.

How can I create a Word document programmatically using VB.NET?

To create a Word document programmatically using VB.NET, you need to create a Visual Basic project in Visual Studio, install the IronWord library from the NuGet Package Manager, create a TextRun and Paragraph, and then use the WordDocument class object to export it as a DOCX file.

What are the key features of this Word document manipulation library?

Key features of IronWord include cross-platform support, document structure manipulation, and styling and formatting options. It supports various .NET versions and can be used across different operating systems.

Can this library be used without Microsoft Office?

Yes, IronWord allows developers to work with Word documents without needing Microsoft Office or Word Interop.

What platforms does this library support?

IronWord supports C#, F#, and VB.NET, and runs on various .NET versions including 8, 7, 6, 5, Core, Standard, or Framework. It is compatible with web, mobile, desktop, and console applications.

How do I install this Word document library using the Package Manager Console?

You can install IronWord using the Package Manager Console by running the command: Install-Package IronWord.

Is this library free to use?

IronWord is free for development purposes and can be licensed to test its complete functionality in commercial mode before deciding.

What types of applications can benefit from using this Word document library?

Applications that need to programmatically generate and manipulate Word documents, such as web, mobile, desktop, and console applications, can benefit from using IronWord.

Where can I find more information about this library's features?

More detailed information about IronWord's features can be found on its documentation page on IronWord's official website.

Regan Pun
Software Engineer
Regan graduated from the University of Reading, with a BA in Electronic Engineering. Before joining Iron Software, his previous job roles had him laser-focused on single tasks; and what he most enjoys at Iron Software is the spectrum of work he gets to undertake, whether it’s adding value to sales, technical support, product development or marketing. He enjoys understanding the way developers are using the Iron Software library, and using that knowledge to continually improve documentation and develop the products.
< PREVIOUS
How to Create DOCX File in C#
NEXT >
How to Create Word Documents Without Office Interop in C#

Ready to get started? Version: 2025.6 just released

View Licenses >