Pythonは多くのモジュールを提供しています、ありがとうございました。 openpyxl
モジュールをお勧めします。あなたはそれについてhereを読むことができます。私があなたを正しく理解していれば、複数のExcelスプレッドシートを組み合わせたいと思っています。私がwoudlそれを行う方法は、すべてのExcelスプレッドシートの各行の新しいスプレッドシートに行を追加することです。
import openpyxl
import os
from os.path import join
spreadsheet = openpyxl.Workbook()
final_sheet = spreadsheet.get_sheet_by_name('sheet1')
x = 0
for(dir, dirs, files) in os.walk('C:\Users\Cheyn Shmuel\Documents'):
for file in files:
filename = join(dir, file)
try:
workbook = openpyxl.load_workbook(filename)
except:
continue # in case there are files that aren't excel in that directory
for s in workbook.get_sheet_names():
sheet = workbook.get_sheet_by_name(s)
for row in sheet.rows:
for cell in row:
try:
final_sheet[cell.coordinate[0] + str(int(cell.coordinate[1:]) + x)] = cell.value
except:
final_sheet[cell.coordinate[:1] + str(int(cell.coordinate[2:]) + x)] = cell.value
x += sheet.get_highest_row()
spreadsheet.save('your file.xlsx')
このプログラムはあなたのディレクトリ内のすべてのExcelファイルを通過し、新しいスプレッドシートに入れ、次にようにその次の1を入れ、そしてだろう:私はこれを行うための簡単なプログラムを書きました。
あなたはSQLとADOでそれを行うことができます –
@Nathan_Savご回答いただきありがとうございます!何も経験がない人にとっては、これを行うことを学ぶ価値がありますか?それとも、私が現在やっていることをやるよりも、学習に時間がかかりますか? – Maverick
特定のディレクトリにあるすべてのファイルを開き、誰かから特定の値をコピー/ペーストするVBAスクリプトを作成するのは比較的簡単ですが、もちろん多くのブックを1つずつ計算するのに時間がかかります。参照してください:http://stackoverflow.com/questions/10380312/loop-through-files-in-a-folder-using-vba – Limak