質問編集履歴
9
誤字
test
CHANGED
File without changes
|
test
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
書いたコードとターミナルは以下の通りです。
|
18
18
|
|
19
|
-
白の
|
19
|
+
白の塗つぶしはユーザー名です。
|
20
20
|
|
21
21
|
![イメージ説明](602913b337ef336dd323dffc490f7b35.png)
|
22
22
|
|
8
自己解決しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -107,3 +107,13 @@
|
|
107
107
|
Macで同様にやってみたところ、エラーが出ずに処理できました。
|
108
108
|
|
109
109
|
rawを使っても同様のエラーが起こります。
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
自己解決いたしました。
|
114
|
+
|
115
|
+
ファイルのアドレスをすべて手打ちにしたらエラーが出なくなりました。
|
116
|
+
|
117
|
+
これまではコピペでやっていました。
|
118
|
+
|
119
|
+
コピペだとエラーになる理由が分からないので、教えていただけると嬉しいです。
|
7
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -9,6 +9,8 @@
|
|
9
9
|
PythonでVS Codeを利用して、エクセルからデータの読み込みをしようとしました。
|
10
10
|
|
11
11
|
エクセルの読み取り専用は解除してあります。
|
12
|
+
|
13
|
+
エクセルは作成時のままで、何の加工もしていません。
|
12
14
|
|
13
15
|
|
14
16
|
|
6
代替コードの追加を削除
test
CHANGED
File without changes
|
test
CHANGED
@@ -105,37 +105,3 @@
|
|
105
105
|
Macで同様にやってみたところ、エラーが出ずに処理できました。
|
106
106
|
|
107
107
|
rawを使っても同様のエラーが起こります。
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
```python
|
112
|
-
|
113
|
-
import openpyxl as px
|
114
|
-
|
115
|
-
book = px.load_workbook('C:/Users/*******/Desktop/sample.xlsx')
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
name = book.get_sheet_names() #シート名を抽出
|
120
|
-
|
121
|
-
print(name)
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
now = book.active #nowの中に有効化したシートを代入
|
126
|
-
|
127
|
-
print(now["A1"].value) #A1の値を抽出
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
for i in range(5): #B1-B5の値を抽出
|
132
|
-
|
133
|
-
some = "B" + str(i + 1)
|
134
|
-
|
135
|
-
print(now[some].value)
|
136
|
-
|
137
|
-
i += 1
|
138
|
-
|
139
|
-
```
|
140
|
-
|
141
|
-
こちらのコードだとエラーが出ませんでした。
|
5
代替コードの追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -105,3 +105,37 @@
|
|
105
105
|
Macで同様にやってみたところ、エラーが出ずに処理できました。
|
106
106
|
|
107
107
|
rawを使っても同様のエラーが起こります。
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
```python
|
112
|
+
|
113
|
+
import openpyxl as px
|
114
|
+
|
115
|
+
book = px.load_workbook('C:/Users/*******/Desktop/sample.xlsx')
|
116
|
+
|
117
|
+
|
118
|
+
|
119
|
+
name = book.get_sheet_names() #シート名を抽出
|
120
|
+
|
121
|
+
print(name)
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
now = book.active #nowの中に有効化したシートを代入
|
126
|
+
|
127
|
+
print(now["A1"].value) #A1の値を抽出
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
for i in range(5): #B1-B5の値を抽出
|
132
|
+
|
133
|
+
some = "B" + str(i + 1)
|
134
|
+
|
135
|
+
print(now[some].value)
|
136
|
+
|
137
|
+
i += 1
|
138
|
+
|
139
|
+
```
|
140
|
+
|
141
|
+
こちらのコードだとエラーが出ませんでした。
|
4
追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -99,3 +99,9 @@
|
|
99
99
|
OSError: [Errno 22] Invalid argument: '\u202aC:/Users/K2020019/Desktop/sample.xlsx'
|
100
100
|
|
101
101
|
```
|
102
|
+
|
103
|
+
追記
|
104
|
+
|
105
|
+
Macで同様にやってみたところ、エラーが出ずに処理できました。
|
106
|
+
|
107
|
+
rawを使っても同様のエラーが起こります。
|
3
Terminalの追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -59,3 +59,43 @@
|
|
59
59
|
|
60
60
|
|
61
61
|
```
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
```Terminal
|
66
|
+
|
67
|
+
(base) PS C:\Users*******\Desktop\PYTHON> & C:/Users/*******/Anaconda3/python.exe c:/Users/*******/Desktop/PYTHON/EXCELsample.py
|
68
|
+
|
69
|
+
Traceback (most recent call last):
|
70
|
+
|
71
|
+
File "c:/Users/*******/Desktop/PYTHON/EXCELsample.py", line 11, in <module>
|
72
|
+
|
73
|
+
df_order=pd.read_excel(import_file_path, sheet_name=excel_sheet_name) #Excelファイルの内容を読み込む
|
74
|
+
|
75
|
+
File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_base.py", line 304, in read_excel
|
76
|
+
|
77
|
+
io = ExcelFile(io, engine=engine)
|
78
|
+
|
79
|
+
File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_base.py", line 824, in __init__
|
80
|
+
|
81
|
+
self._reader = self._engines[engine](self._io)
|
82
|
+
|
83
|
+
File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_xlrd.py", line 21, in __init__
|
84
|
+
|
85
|
+
super().__init__(filepath_or_buffer)
|
86
|
+
|
87
|
+
File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_base.py", line 353, in __init__
|
88
|
+
|
89
|
+
self.book = self.load_workbook(filepath_or_buffer)
|
90
|
+
|
91
|
+
File "C:\Users*******\Anaconda3\lib\site-packages\pandas\io\excel\_xlrd.py", line 36, in load_workbook
|
92
|
+
|
93
|
+
return open_workbook(filepath_or_buffer)
|
94
|
+
|
95
|
+
File "C:\Users*******\Anaconda3\lib\site-packages\xlrd\__init__.py", line 111, in open_workbook
|
96
|
+
|
97
|
+
with open(filename, "rb") as f:
|
98
|
+
|
99
|
+
OSError: [Errno 22] Invalid argument: '\u202aC:/Users/K2020019/Desktop/sample.xlsx'
|
100
|
+
|
101
|
+
```
|
2
codeの編集
test
CHANGED
File without changes
|
test
CHANGED
@@ -36,11 +36,11 @@
|
|
36
36
|
|
37
37
|
|
38
38
|
|
39
|
-
import_file_path='C:/Users/
|
39
|
+
import_file_path='C:/Users/*******/Desktop/sample.xlsx' #ファイルのパスを作成
|
40
40
|
|
41
41
|
excel_sheet_name='発注管理表' #編集したいシートを指定
|
42
42
|
|
43
|
-
export_file_path='C:/Users/
|
43
|
+
export_file_path='C:/Users/*******/Desktop/PYTHON/outoput' #ファイルのパスを作成
|
44
44
|
|
45
45
|
|
46
46
|
|
1
codeの追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -21,3 +21,41 @@
|
|
21
21
|
![イメージ説明](0ef82d765b6c65453888eb708aa68310.png)
|
22
22
|
|
23
23
|
宜しくお願い致します。
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
```python
|
28
|
+
|
29
|
+
import openpyxl #PythonからExcelを操作
|
30
|
+
|
31
|
+
import pandas as pd #データ解析を支援する機能を提供するPythonのライブラリ
|
32
|
+
|
33
|
+
import glob #特定の条件に一致するファイル名を取得
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
import_file_path='C:/Users/K2020019/Desktop/sample.xlsx' #ファイルのパスを作成
|
40
|
+
|
41
|
+
excel_sheet_name='発注管理表' #編集したいシートを指定
|
42
|
+
|
43
|
+
export_file_path='C:/Users/K2020019/Desktop/PYTHON/outoput' #ファイルのパスを作成
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
df_order=pd.read_excel(import_file_path, sheet_name=excel_sheet_name) #Excelファイルの内容を読み込む
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
company_name=df_order['会社名'].unique() #会社名をユニークにして取得
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
for i in company_name: #フィルタリングして別ファイルに保存
|
56
|
+
|
57
|
+
print(i)
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
```
|