We can write value inside a cell in a worksheet in Selenium. Excel is a spreadsheet which is saved with the .xlsx extension. An excel workbook has multiple sheets and each sheet consists of rows and columns.
Out of all the worksheets, while we are accessing a particular sheet that is called as an active sheet. Each cell inside a sheet has a unique address which is a combination of row and column numbers.
The column number starts from alphabetic character A and row number starts from the number 1. A cell can contain numerous types of values and they are the main component of a worksheet.
To work with excel in Selenium with python, we need to take help of OpenPyXL library. This library is responsible for reading and writing operations on Excel, having the extensions like xlsx, xlsm, xltm, xltx.
To install OpenPyXL library, we have to execute the command pip install openpyxl. This is because OpenPyXL does not come by default with python. After this we should import openpyxl in our code and then we should be ready to interact with excel.
To write the value inside the worksheet, first of all we need to load the entire workbook by specifying the path where it is located. This is achieved with load_workbook() method. Next we need to identify the active sheet among all the worksheets with the help of active method.
To access a cell inside the active worksheet, we need the help of row and column number and the cell method [which accepts the row and column number as arguments]. For example, to point to the cell corresponding to row 2 and column 3, we need to mention sheet.cell(row=2,column=3).
After identification of the cell, we need to use a value method to set the value inside the cell.
wrkbk = load_workbook("C:\\work\\SeleniumPython.xlsx") # to identify the active sheet sh = wrkbk.active # identify the cell row 2 and column 3 c=sh.cell(row=2,column=3) # set the value in row 2 and column 3 sh.cell(row=2,column=3).value = "Tutorialspoint"
Coding Implementation to set value in a particular cell.
import openpyxl # load excel with its path wrkbk = load_workbook("C:\\work\\SeleniumPython.xlsx") # to get the active work sheet sh = wrkbk.active # get the value of row 2 and column 3 c=sh.cell(row=2,column=3) # to set the value in row 2 and column 3 sh.cell(row=2,column=3).value = "Tutorialspoint"