回答編集履歴
4
修正
answer
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
openpyxlを使った例になります。
|
2
|
-
```
|
2
|
+
```DIFF
|
3
3
|
from openpyxl import load_workbook
|
4
4
|
import glob
|
5
5
|
from copy import copy
|
6
6
|
|
7
7
|
|
8
8
|
DEST_SHEET_NAME = 貼り付け先ファイルの貼り付け先シート名
|
9
|
+
+KEYCELL = 0 # データが入っているか判定する列を指定(0始まり)
|
9
10
|
|
10
11
|
dest_wb = load_workbook(filename='結合.xlsx')
|
11
12
|
dest_ws = dest_wb[DEST_SHEET_NAME]
|
@@ -18,6 +19,8 @@
|
|
18
19
|
print(f"{file}を読み取り中...")
|
19
20
|
ws = wb['Sheet2']
|
20
21
|
for row in ws.rows:
|
22
|
+
+ if row[KEYCELL].value is None:
|
23
|
+
+ continue
|
21
24
|
for c, cell in enumerate(row):
|
22
25
|
dest_ws.cell(column=c+1, row=k, value=cell.value)
|
23
26
|
if cell.has_style:
|
3
修正
answer
CHANGED
@@ -28,6 +28,7 @@
|
|
28
28
|
new_cell.number_format = copy(cell.number_format)
|
29
29
|
new_cell.protection = copy(cell.protection)
|
30
30
|
new_cell.alignment = copy(cell.alignment)
|
31
|
+
new_cell.hyperlink = copy(cell.hyperlink)
|
31
32
|
k = k+1
|
32
33
|
|
33
34
|
dest_wb.save('結合.xlsx')
|
2
追加
answer
CHANGED
@@ -11,11 +11,11 @@
|
|
11
11
|
dest_ws = dest_wb[DEST_SHEET_NAME]
|
12
12
|
|
13
13
|
file_list = glob.glob("data/*.xlsx")
|
14
|
-
|
14
|
+
print(f"読み込み対象のファイルは{len(file_list)}件です。")
|
15
15
|
k = 1
|
16
16
|
for file in file_list:
|
17
17
|
wb = load_workbook(filename=file)
|
18
|
-
print(file)
|
18
|
+
print(f"{file}を読み取り中...")
|
19
19
|
ws = wb['Sheet2']
|
20
20
|
for row in ws.rows:
|
21
21
|
for c, cell in enumerate(row):
|
@@ -31,5 +31,5 @@
|
|
31
31
|
k = k+1
|
32
32
|
|
33
33
|
dest_wb.save('結合.xlsx')
|
34
|
-
|
34
|
+
print("処理が完了しました")
|
35
35
|
```
|
1
answer
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
|
8
8
|
DEST_SHEET_NAME = 貼り付け先ファイルの貼り付け先シート名
|
9
9
|
|
10
|
-
dest_wb = load_workbook(filename='
|
10
|
+
dest_wb = load_workbook(filename='結合.xlsx')
|
11
11
|
dest_ws = dest_wb[DEST_SHEET_NAME]
|
12
12
|
|
13
13
|
file_list = glob.glob("data/*.xlsx")
|