openpyxl操作單元格

2022-09-09 21:45:33 字數 1968 閱讀 5693

# 插入行,可以填入兩個引數,第乙個是從第幾行開始,第二個是新增幾行,下面是從第二行開始插入三行空白行

ws.insert_rows(2,3)

# 插入列,同上

ws.insert_cols(1,2)

# 在最後一行新增,括號內引數可以是列表、元組等物件
1.通過字母和數字確定**插入內容

ws['a1'] = '單元格測試'

2.通過cell的引數和value方法插入內容

ws.cell(1,3).value = '第三個單元格測試'

3.都通過引數的形式確定單元格

ws.cell(row=1,column=4,value='第四個單元格測試')

1.使用rows屬性,返回乙個關於行資料的生成器,將其轉化為元組進行遍歷輸出

# 將rows屬性的值賦值

row_list = ws.rows

# 轉換為元組

row_list = tuple(row_list)

# 從row_list元組裡面迴圈讀取乙個元組

#((第一行資料,1,2,3,4),(第二行資料1,2,3,4,),(第三行資料))....

for row in row_list:

# 內層迴圈是從row迴圈裡讀取每乙個值

for cell in row:

# 讀取單元格的值需要value屬性,取內層元組的value賦值到value變數,遍歷輸出

value = cell.value

print(value)

2.使用ws.iter_rows()方法讀取,和rows屬性類似,也是返回乙個生成器,可以通過引數指定讀取的範圍

# 引數可以是min_row,max_row,min_col,max_col

# 讀取9行,也rows相同

row_list = ws.iter_rows(min_row=1,max_row=10)

row_list = tuple(row_list)

for row in row_list:

for cell in row:

value = cell.value

print(value)

3.使用ws[int]獲取行

mcell = ws[1]

for i in mcell:

print(i.value)

1.通過columns屬性

# 將columns賦值給column_list

column_list = ws.columns

# 轉換成元組

column_list = tuple(column_list)

# 迴圈列印,呼叫value屬性

# ((第一列資料),(第二列資料))

for col in column_list:

for cell in col:

value = cell.value

print(value)

2.通過ws.iter_cols()方法

# 將iter_cols賦值給column_list

column_list = ws.iter_cols(2,2)

# 轉換成元組

column_list = tuple(column_list)

# 迴圈列印,呼叫value屬性

# ((第一列資料),(第二列資料))

for col in column_list:

for cell in col:

value = cell.value

print(value)

3.使用ws['a']方式獲取列

# a代表第一列,返回乙個元組

mcell = ws['a']

for i in mcell:

print(i.value)

unidbgrid單元格操作

unidbgrid單元格操作 grid裡回車替換tab function cellkeydown sender,td,cellindex,record,tr,rowindex,e,eopts a.startedit record.index,cellindex 1 這行 也可以用於單元格定位焦點 動...

unidbgrid單元格操作

unidbgrid單元格操作 grid裡回車替換tab function cellkeydown sender,td,cellindex,record,tr,rowindex,e,eopts a.startedit record.index,cellindex 1 這行 也可以用於單元格定位焦點 動...

openpyxl 讀取單元格表示式的值

問題 簡而言之 當單元格為表示式時,如何直接讀取單元格的值?案發過程 使用openpyxl讀取單元格值時,如果單元格是表示式,會導致讀出來的值為表示式 關聯了其他的單元格 如果把該值,放在另外乙個excel中,會導致取值為0。所以,我們希望可以直接讀取該單元格表示式的值。那麼問題來了 我們要怎麼直接...