回答編集履歴
3
コードの修正
test
CHANGED
@@ -130,7 +130,7 @@
|
|
130
130
|
|
131
131
|
# 部活で格納するリストを分ける
|
132
132
|
|
133
|
-
for row in
|
133
|
+
for row in active_sheet.iter_rows(min_row=5, values_only=True):
|
134
134
|
|
135
135
|
if all(is_empty(c) for c in row):
|
136
136
|
|
2
修正
test
CHANGED
@@ -106,6 +106,8 @@
|
|
106
106
|
|
107
107
|
|
108
108
|
|
109
|
+
##### 追記
|
110
|
+
|
109
111
|
因みに`iter_rows()`の引数に`values_only=True`を設定すると、cellオブジェクトではなくセルの中の値を受け取るようになるので代入の部分を簡単に書くことができます。
|
110
112
|
|
111
113
|
[iter_rows() | openpyxlドキュメント](https://openpyxl.readthedocs.io/en/stable/api/openpyxl.worksheet.worksheet.html#openpyxl.worksheet.worksheet.Worksheet.iter_rows)
|
1
追記
test
CHANGED
@@ -103,3 +103,47 @@
|
|
103
103
|
|
104
104
|
|
105
105
|
```
|
106
|
+
|
107
|
+
|
108
|
+
|
109
|
+
因みに`iter_rows()`の引数に`values_only=True`を設定すると、cellオブジェクトではなくセルの中の値を受け取るようになるので代入の部分を簡単に書くことができます。
|
110
|
+
|
111
|
+
[iter_rows() | openpyxlドキュメント](https://openpyxl.readthedocs.io/en/stable/api/openpyxl.worksheet.worksheet.html#openpyxl.worksheet.worksheet.Worksheet.iter_rows)
|
112
|
+
|
113
|
+
|
114
|
+
|
115
|
+
```python
|
116
|
+
|
117
|
+
# 空行の定義
|
118
|
+
|
119
|
+
def is_empty(cell):
|
120
|
+
|
121
|
+
return cell is None or not str(cell).strip()
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
# Excelシートで一列ごとに対応するリストへ格納
|
128
|
+
|
129
|
+
# 部活で格納するリストを分ける
|
130
|
+
|
131
|
+
for row in ws_active.iter_rows(min_row=5, values_only=True):
|
132
|
+
|
133
|
+
if all(is_empty(c) for c in row):
|
134
|
+
|
135
|
+
break
|
136
|
+
|
137
|
+
if row[4] == "野球部":
|
138
|
+
|
139
|
+
bb_clb.extend(row)
|
140
|
+
|
141
|
+
elif row[4] == "陸上部":
|
142
|
+
|
143
|
+
tf_clb.extend(row)
|
144
|
+
|
145
|
+
elif row[4] == "写真クラブ":
|
146
|
+
|
147
|
+
pic_clb.extend(row)
|
148
|
+
|
149
|
+
```
|