![](/img/trans.png)
[英]How to read range of cells using column=numbers instead of letters in OpenPyXL?
[英]Read and output specific cells in a column by row number using openpyxl
發布的代碼是從研究具有類似項目的其他來源編譯而來的。
以下代碼給出了單元格值的行號-在本例中為我在D列中查找的“資產”。
我想知道是否可以使用rownum
來讀取該行號中的特定單元格? -即E
和Q
列中的單元格值
print("loading database..")
from openpyxl import load_workbook
wb = load_workbook(filename = 'itimsdb.xlsx')
ws = wb['Sheet1']
sheet_ranges = wb['Sheet1']
userInput = input("Scan asset now:")
strValue=userInput
for row in range(ws.max_row):
for column in "D":
cell_name = "{}{}".format(column, row+1)
value= str(ws[cell_name].value)
if value==strValue:
rownum = row
# to verify row number
print(rownum+1)
我改用.CSV
db。 現在,我必須弄清楚如何循環播放它,並繼續掃描和寫出針對不同資產的新行。
import csv
userInput = input("Scan asset now:")
strValue=userInput
with open('mydb.csv', 'r') as f:
reader = csv.reader(f)
for row in reader:
for field in row:
if field == strValue:
with open('test.csv', "w") as csv_file:
writer = csv.writer(csv_file, delimiter=',')
for row in reader:
writer.writerow(row)
print(row)
break
始終使用ws.iter_rows()
或ws.iter_cols()
而不是構造自己的范圍。 對於即席訪問,您還可以使用ws[E]
和ws[E:Q]
或ws[4]
和ws[4:6]
讓你永遠需要創建Excel的風格坐標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.