teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

実際の範囲へ合わせこみ

2021/04/09 01:55

投稿

Third_Kei
Third_Kei

スコア65

answer CHANGED
@@ -1,28 +1,28 @@
1
1
  VBAから直接CSVに出力するのはいかがでしょうか?
2
2
 
3
3
  以下はCSVへの出力を行う手順をざっくり書いたものです
4
- 高速化、データ整形などの改善点は大量にありますが、参考までに
4
+ 高速化、データ整形などの改善点はいくつかありますが、参考までに
5
5
 
6
6
  ```
7
7
  Sub writeCSV()
8
8
 
9
- Dim ws As Worksheet
9
+ Dim ws As Worksheet
10
- Set ws = ThisWorkbook.Worksheets(1)
10
+ Set ws = ThisWorkbook.Worksheets(1)
11
-
11
+
12
- Dim csvFile As String
12
+ Dim csvFile As String
13
- csvFile = ActiveWorkbook.Path & "\テスト.csv"
13
+ csvFile = ActiveWorkbook.Path & "\data.csv"
14
- Open csvFile For Output As #1
14
+ Open csvFile For Output As #1
15
+ Dim v As Variant
16
+ v = Range(Cells(5, 26), Cells(58, 27))
15
- Dim i As Long, j As Long
17
+ Dim i As Long, j As Long
16
-
17
- For i = 1 To 10
18
+ For i = 5 - 4 To 58 - 4 '1始まりに調整
18
- For j = 1 To 10
19
+ For j = 26 - 25 To 27 - 25 '1始まりに調整
19
- Print #1, ws.Cells(i, j).Value & ",";
20
+ Print #1, v(i, j) & ",";
21
+ Next
22
+ Print #1, vbCr;
20
23
  Next
21
- Print #1, vbCr;
22
- Next
23
-
24
- Close #1
24
+ Close #1
25
-
25
+
26
26
  MsgBox "data.csvに書き出しました"
27
27
 
28
28
  End Sub

2

画像削除

2021/04/09 01:55

投稿

Third_Kei
Third_Kei

スコア65

answer CHANGED
@@ -26,9 +26,4 @@
26
26
  MsgBox "data.csvに書き出しました"
27
27
 
28
28
  End Sub
29
- ```
29
+ ```
30
- ###実行元Excel
31
- ![上記プログラム実行元ファイル](b3ce0fc2e70eee0823ec93c0af4423d8.png)
32
-
33
- ###実行後CSV
34
- ![出力CSV](af9a5aafdc30cd20c2a8a040d49cbf46.png)

1

画像の追記

2021/04/09 01:38

投稿

Third_Kei
Third_Kei

スコア65

answer CHANGED
@@ -10,7 +10,7 @@
10
10
  Set ws = ThisWorkbook.Worksheets(1)
11
11
 
12
12
  Dim csvFile As String
13
- csvFile = ActiveWorkbook.Path & "\data.csv"
13
+ csvFile = ActiveWorkbook.Path & "\テスト.csv"
14
14
  Open csvFile For Output As #1
15
15
  Dim i As Long, j As Long
16
16
 
@@ -26,4 +26,9 @@
26
26
  MsgBox "data.csvに書き出しました"
27
27
 
28
28
  End Sub
29
- ```
29
+ ```
30
+ ###実行元Excel
31
+ ![上記プログラム実行元ファイル](b3ce0fc2e70eee0823ec93c0af4423d8.png)
32
+
33
+ ###実行後CSV
34
+ ![出力CSV](af9a5aafdc30cd20c2a8a040d49cbf46.png)