回答編集履歴
3
修正
test
CHANGED
@@ -32,7 +32,9 @@
|
|
32
32
|
|
33
33
|
[追記]
|
34
34
|
|
35
|
-
・数値を貼り付けるには、load_workbookでdata_only=Trueを指定します。
|
35
|
+
~~・数値を貼り付けるには、load_workbookでdata_only=Trueを指定します。~~
|
36
|
+
|
37
|
+
・書式が文字列となっている数字を、数値として貼り付ける場合は、float()で囲ってください。
|
36
38
|
|
37
39
|
|
38
40
|
|
@@ -106,17 +108,19 @@
|
|
106
108
|
|
107
109
|
k = (i - 2) % 10 + 2
|
108
110
|
|
109
|
-
ws2.cell(k, 1).value = ws1[A].value
|
111
|
+
ws2.cell(k, 1).value = float(ws1[A].value)
|
110
112
|
|
111
|
-
ws2.cell(k, 2).value = ws1[B].value
|
113
|
+
ws2.cell(k, 2).value = float(ws1[B].value)
|
112
114
|
|
113
|
-
ws2.cell(k, 3).value = ws1[C].value
|
115
|
+
ws2.cell(k, 3).value = float(ws1[C].value)
|
114
116
|
|
115
|
-
ws2.cell(k, 4).value = ws1[D].value
|
117
|
+
ws2.cell(k, 4).value = float(ws1[D].value)
|
116
118
|
|
117
|
-
ws2.cell(k, 5).value = ws1[E].value
|
119
|
+
ws2.cell(k, 5).value = float(ws1[E].value)
|
118
120
|
|
119
|
-
ws2.cell(k, 6).value = ws1[F].value
|
121
|
+
ws2.cell(k, 6).value = float(ws1[F].value)
|
122
|
+
|
123
|
+
|
120
124
|
|
121
125
|
|
122
126
|
|
@@ -172,7 +176,7 @@
|
|
172
176
|
|
173
177
|
row=num_row+1,
|
174
178
|
|
175
|
-
column=num_column+1).value = cell.value
|
179
|
+
column=num_column+1).value = float(cell.value)
|
176
180
|
|
177
181
|
i += 1
|
178
182
|
|
2
追加
test
CHANGED
@@ -30,13 +30,19 @@
|
|
30
30
|
|
31
31
|
同じように余りを求める式を使っています。
|
32
32
|
|
33
|
+
[追記]
|
34
|
+
|
35
|
+
・数値を貼り付けるには、load_workbookでdata_only=Trueを指定します。
|
36
|
+
|
37
|
+
|
38
|
+
|
33
39
|
```
|
34
40
|
|
35
41
|
import openpyxl
|
36
42
|
|
37
43
|
|
38
44
|
|
39
|
-
wb = openpyxl.load_workbook('data.xlsx')
|
45
|
+
wb = openpyxl.load_workbook('data.xlsx', data_only=True)
|
40
46
|
|
41
47
|
ws1 = wb['リスト']
|
42
48
|
|
@@ -130,7 +136,7 @@
|
|
130
136
|
|
131
137
|
|
132
138
|
|
133
|
-
wb = openpyxl.load_workbook('data.xlsx')
|
139
|
+
wb = openpyxl.load_workbook('data.xlsx', data_only=True)
|
134
140
|
|
135
141
|
ws1 = wb['リスト']
|
136
142
|
|
1
書き込み先の行頭誤り修正、例外処理追加
test
CHANGED
@@ -122,7 +122,7 @@
|
|
122
122
|
|
123
123
|
# 別解
|
124
124
|
|
125
|
-
下記のようにすれば
|
125
|
+
下記のようにすれば短いコードになります。
|
126
126
|
|
127
127
|
```
|
128
128
|
|
@@ -142,11 +142,19 @@
|
|
142
142
|
|
143
143
|
rng1 = ws1["A2":"F1001"]
|
144
144
|
|
145
|
-
i =
|
145
|
+
i = 0
|
146
146
|
|
147
147
|
for idx in range(1,101):
|
148
148
|
|
149
|
+
try:
|
150
|
+
|
149
|
-
ws2 = wb.worksheets[idx]
|
151
|
+
ws2 = wb.worksheets[idx]
|
152
|
+
|
153
|
+
except IndexError:
|
154
|
+
|
155
|
+
print(f"エラー:存在しないシートインデックス[{idx}]が指定されました。")
|
156
|
+
|
157
|
+
break
|
150
158
|
|
151
159
|
for num_row in range(1,11):
|
152
160
|
|
@@ -160,7 +168,7 @@
|
|
160
168
|
|
161
169
|
column=num_column+1).value = cell.value
|
162
170
|
|
163
|
-
i+=1
|
171
|
+
i += 1
|
164
172
|
|
165
173
|
|
166
174
|
|