Populating data first by row then by colum will certainly improve the overall performance to certain extent.
For example, put data in sequence of A1, B1, A2, B2 will be faster than A1, A2, B1, B2. If there are many cells in a worksheet and you follow this sequence i.e., fill the data row wise in your worksheet, this tip can make the program much faster.
[C#]
Workbook workbook = new Workbook();
Cells cells = workbook.Worksheets[0].Cells;
cells["A1"].PutValue("data1");
cells["B1"].PutValue("data2");
cells["A2"].PutValue("data3");
cells["B2"].PutValue("data4");
[VB]
Dim workbook As Workbook = New Workbook()
Dim cells As Cells = workbook.Worksheets(0).Cells
Cells("A1").PutValue("data1")
Cells("B1").PutValue("data2")
Cells("A2").PutValue("data3")
Cells("B2").PutValue("data4")
[JAVA]
Workbook workbook = new Workbook();
Cells cells = workbook.getWorksheets().getSheet(0).getCells();
cells.getCell("A1").setValue("data1");
cells.getCell("B1").setValue("data2");
cells.getCell("A2").setValue("data3");
cells.getCell("B2").setValue("data4");