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






4.33/5 (2 votes)
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:
- Get directory name values from Excel spreadsheet using
Clipboard
object. - 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:
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
.
'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.
'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