各行の特定の列の値を別の値と比較したいのですが、値が等しい場合は、行全体を別のスプレッドシートにコピーしたいと思います。
Pythonを使用してこれを行うにはどうすればよいですか?
ありがとう!
plsはpythonExcelライブラリxlrd
(Excelの読み取り用)/ xlwt
(Excelの書き込み用)
http://www.python-excel.org/を参照します
たとえば(reading)(from this):
import xlrd
fname = "sample.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
sh = bk.sheet_by_name("Sheet1")
except:
print "no sheet in %s named Sheet1" % fname
return None
nrows = sh.nrows
ncols = sh.ncols
print "nrows %d, ncols %d" % (nrows,ncols)
cell_value = sh.cell_value(1,1)
print cell_value
row_list = []
for i in range(1,nrows):
row_data = sh.row_values(i)
row_list.append(row_data)
Excel 2007で処理している場合は、 http openpyxl
://packages.python.org/openpyxl/を使用します。
「xls」ファイルの場合、xlutilsパッケージを使用できます。現在、Excel形式の構造のため、openpyxlのブック間でオブジェクトをコピーすることはできません。管理する必要のある依存関係がいたるところにたくさんあります。したがって、必要なものをすべて手動でコピーするのはクライアントコードの責任です。時間が許せば、xlutils機能の一部をopenpyxlに移植しようとするかもしれません。