Click here to Skip to main content
15,885,920 members
Articles / Programming Languages / Visual Basic

Create Bulk or Mass Folders using Names from Excel Spreadsheet with Visual Basic.NET

Rate me:
Please Sign up or sign in to vote.
4.33/5 (2 votes)
7 Apr 2010CPOL1 min read 40.3K   5   3
This sample code tells you how to create a series of folders using folder names stored in an Excel spreadsheet.

Introduction

This sample code tells you how to create a series of folders using folder names stored in an Excel spreadsheet.

How to Use

  • Open any Excel spreadsheet which contains folder names. You can get a sample spreadsheet from downloaded source.

  • Select folder names and copy them from this Excel spreadsheet.
  • Open downloaded source code with Visual Studio 2005 and run it. The following form should appear.

  • Click on Paste from Excel. This should paste values from Excel spreadsheet into DatagridView. If it does not paste, make sure you have copied values from Excel spreadsheet.

  • Enter path of directory where you want to create folders and make sure it exists.
  • Click Create Folders button. This will create folders in specified directory.

How It Works

There are two main functionalities used in this sample:

  1. Get directory name values from Excel spreadsheet using Clipboard object.
  2. Create folders using DirectoryInfo object.

(1) Get directory name values from Excel spreadsheet

VB.NET clipboard object allows you to get text from Clipboard object. Here is the code:

VB.NET
Dim s As String = Clipboard.GetText()
'When you get excel clipboard data as string, it will separate 
'cells with a new line character. Use this new line character 
'to split values in to an array.
Dim cells() As String = s.Split(vbNewLine)
'Now Cells() array will hold all directory names.

Use cells() array to build a datatable and assign it to DataGridView as datasource.

VB.NET
'Create data table with directory names.
Dim DT As New DataTable()
DT.Columns.Add("Directory Name")
Dim i As Integer
'Loop through cells() array and add rows in data table.
For i = 0 To cells.Length - 1
    DT.Rows.Add(New Object() {cells(i)})
Next
DataGridView1.DataSource = DT

(2) Create Folders

Once you have folder names in DataGridView, you can use it to create folders with DirectoryInfo() object.

VB.NET
'Get values from DataGridView datasource to a DataTable.
Dim DT As DataTable = DataGridView1.DataSource

Dim i As Integer
'Loop through grid and get directory names.
For i = 0 To DT.Rows.Count - 1
    'Get directory name.
    Dim DirName As String = DT.Rows(i)("Directory Name").ToString()
    'Trim directory name to remove spaces from beginning or end of string.
    DirName = Trim(DirName)
    If (DirName  "") Then
        'Initialize a DirectoryInfo object with this directory.
        'txtDir is the path where directories needs to be created.
        Dim oDir As New DirectoryInfo(txtDir.Text + DirName) 
        oDir.Create()
    End If
Next

History

  • 7th April, 2010: Initial post

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



Comments and Discussions

 
GeneralAppreciate this Pin
danteellis28-Mar-11 18:55
danteellis28-Mar-11 18:55 
GeneralBut why use....... Pin
DaveAuld10-Apr-10 20:19
professionalDaveAuld10-Apr-10 20:19 
QuestionPractical Use? Pin
chrixko7-Apr-10 10:32
chrixko7-Apr-10 10:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.