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

質問編集履歴

7

追記文を改定

2019/07/05 07:16

投稿

mmm_x
mmm_x

スコア10

title CHANGED
File without changes
body CHANGED
@@ -10,14 +10,4 @@
10
10
  質問の仕方も初心者でわかりづらくなってしまい申し訳ございません。
11
11
 
12
12
  追記
13
- テキストファイルからinstr関数を使用したあと文字の抽出mid関数などを用いてString文を読み取りそれをセルに挿入します。
13
+ テキストファイルからinstr関数を使用したあと文字の抽出mid関数などを用いてString文を読み取りそれをセルに挿入します。
14
-
15
- Len()
16
- LTrim(Mid())
17
- ThisWorkbook.Worksheets(シート名).Cells(i, j).Value = テキスト値
18
- i= i+ 1
19
- これをDo Loop文で繰り返ししているので処理が遅いです。
20
-
21
- Q.1セルずつ、1行ずつコピーするのは必須でしょうか?
22
-
23
- A.必須ではありません。きちんと値さえ入れば大丈夫です

6

編集

2019/07/05 07:16

投稿

mmm_x
mmm_x

スコア10

title CHANGED
File without changes
body CHANGED
@@ -20,60 +20,4 @@
20
20
 
21
21
  Q.1セルずつ、1行ずつコピーするのは必須でしょうか?
22
22
 
23
- A.必須ではありません。きちんと値さえ入れば大丈夫です
23
+ A.必須ではありません。きちんと値さえ入れば大丈夫です
24
-
25
- ```ここに言語を入力
26
- Open ReadExFolder For Input As #1 'テキストファイル内文字検索
27
- Do Until EOF(#1)
28
- Line Input #1, buf
29
- ExportTableStart = InStr(buf, EXTABLE_SEARCH_START)
30
- ExportTableEnd = InStr(buf, EXTABLE_SEARCH_END)
31
- ExportNumberStart = InStr(buf, EXNUMBER_SEARCH_START)
32
- ExportNumberEnd = InStr(buf, EXNUMBER_SEARCH_END)
33
-
34
- If 0 = ExportTableStart And 0 = ExportTableEnd Then
35
-
36
- Else
37
- For i = INITIAL_NUMBER To CELLS_MAX
38
- Arr(i, CELLS_EXTABLE) = i * CELLS_EXTABLE
39
- Arr(i, CELLS_EXNUMBER) = i * CELLS_EXNUMBER
40
- '初回取込の場合、検索値の文字数を調べる
41
- If cnt = INITIAL_NUMBER Then
42
-
43
- 'テーブル検索値の文字数を調べる
44
- ExTable_StartLen = Len(EXTABLE_SEARCH_START)
45
-
46
- 'テーブル名の抽出
47
- ExportTable = LTrim(Mid(buf, ExportTableStart + ExTable_StartLen, ExportTableEnd - ExportTableStart - ExTable_StartLen))
48
-
49
- '件数検索値の文字数を調べる
50
- ExNumber_StartLen = Len(EXNUMBER_SEARCH_START)
51
-
52
- '件数の抽出
53
- ExportNumber = Mid(buf, ExportNumberStart + ExNumber_StartLen, ExportNumberEnd - ExportNumberStart - ExNumber_StartLen)
54
-
55
-
56
- ' ThisWorkbook.Worksheets(SHEET_RESULT).Cells(i, CELLS_EXTABLE).Value = ExportTable
57
- ' ThisWorkbook.Worksheets(SHEET_RESULT).Cells(i, CELLS_EXNUMBER).Value = ExportNumber
58
- cnt = cnt + ADDITION
59
-
60
- Else
61
-
62
- '2回目以降の取込
63
- 'テーブル名の抽出
64
- ExportTable = LTrim(Mid(buf, ExportTableStart + ExTable_StartLen, ExportTableEnd - ExportTableStart - ExTable_StartLen))
65
-
66
- '件数の抽出
67
- ExportNumber = Mid(buf, ExportNumberStart + ExNumber_StartLen, ExportNumberEnd - ExportNumberStart - ExNumber_StartLen)
68
-
69
- '抽出した文字の貼り付け
70
- ' ThisWorkbook.Worksheets(SHEET_RESULT).Cells(i, CELLS_EXTABLE).Value = ExportTable
71
- ' ThisWorkbook.Worksheets(SHEET_RESULT).Cells(i, CELLS_EXNUMBER).Value = ExportNumber
72
-
73
- cnt = cnt + ADDITION
74
-
75
- End If
76
- Next i
77
- Range(Cells(INITIAL_NUMBER, CELLS_EXTABLE), Cells(1000, EXTABLE)) = Arr
78
- Range(Cells(INITIAL_NUMBER, CELLS_EXNUMBER), Cells(1000, EXNUMBER)) = Arr
79
- ```

5

コードの追記

2019/07/02 05:05

投稿

mmm_x
mmm_x

スコア10

title CHANGED
File without changes
body CHANGED
@@ -38,7 +38,7 @@
38
38
  Arr(i, CELLS_EXTABLE) = i * CELLS_EXTABLE
39
39
  Arr(i, CELLS_EXNUMBER) = i * CELLS_EXNUMBER
40
40
  '初回取込の場合、検索値の文字数を調べる
41
- If i = INITIAL_NUMBER Then
41
+ If cnt = INITIAL_NUMBER Then
42
42
 
43
43
  'テーブル検索値の文字数を調べる
44
44
  ExTable_StartLen = Len(EXTABLE_SEARCH_START)

4

コードの追記

2019/07/01 07:49

投稿

mmm_x
mmm_x

スコア10

title CHANGED
File without changes
body CHANGED
@@ -25,7 +25,7 @@
25
25
  ```ここに言語を入力
26
26
  Open ReadExFolder For Input As #1 'テキストファイル内文字検索
27
27
  Do Until EOF(#1)
28
- Line Input #OpenFile, buf
28
+ Line Input #1, buf
29
29
  ExportTableStart = InStr(buf, EXTABLE_SEARCH_START)
30
30
  ExportTableEnd = InStr(buf, EXTABLE_SEARCH_END)
31
31
  ExportNumberStart = InStr(buf, EXNUMBER_SEARCH_START)

3

編集

2019/07/01 07:47

投稿

mmm_x
mmm_x

スコア10

title CHANGED
File without changes
body CHANGED
@@ -22,6 +22,7 @@
22
22
 
23
23
  A.必須ではありません。きちんと値さえ入れば大丈夫です
24
24
 
25
+ ```ここに言語を入力
25
26
  Open ReadExFolder For Input As #1 'テキストファイル内文字検索
26
27
  Do Until EOF(#1)
27
28
  Line Input #OpenFile, buf
@@ -74,4 +75,5 @@
74
75
  End If
75
76
  Next i
76
77
  Range(Cells(INITIAL_NUMBER, CELLS_EXTABLE), Cells(1000, EXTABLE)) = Arr
77
- Range(Cells(INITIAL_NUMBER, CELLS_EXNUMBER), Cells(1000, EXNUMBER)) = Arr
78
+ Range(Cells(INITIAL_NUMBER, CELLS_EXNUMBER), Cells(1000, EXNUMBER)) = Arr
79
+ ```

2

コードの追記

2019/07/01 07:33

投稿

mmm_x
mmm_x

スコア10

title CHANGED
File without changes
body CHANGED
@@ -20,4 +20,58 @@
20
20
 
21
21
  Q.1セルずつ、1行ずつコピーするのは必須でしょうか?
22
22
 
23
- A.必須ではありません。きちんと値さえ入れば大丈夫です
23
+ A.必須ではありません。きちんと値さえ入れば大丈夫です
24
+
25
+ Open ReadExFolder For Input As #1 'テキストファイル内文字検索
26
+ Do Until EOF(#1)
27
+ Line Input #OpenFile, buf
28
+ ExportTableStart = InStr(buf, EXTABLE_SEARCH_START)
29
+ ExportTableEnd = InStr(buf, EXTABLE_SEARCH_END)
30
+ ExportNumberStart = InStr(buf, EXNUMBER_SEARCH_START)
31
+ ExportNumberEnd = InStr(buf, EXNUMBER_SEARCH_END)
32
+
33
+ If 0 = ExportTableStart And 0 = ExportTableEnd Then
34
+
35
+ Else
36
+ For i = INITIAL_NUMBER To CELLS_MAX
37
+ Arr(i, CELLS_EXTABLE) = i * CELLS_EXTABLE
38
+ Arr(i, CELLS_EXNUMBER) = i * CELLS_EXNUMBER
39
+ '初回取込の場合、検索値の文字数を調べる
40
+ If i = INITIAL_NUMBER Then
41
+
42
+ 'テーブル検索値の文字数を調べる
43
+ ExTable_StartLen = Len(EXTABLE_SEARCH_START)
44
+
45
+ 'テーブル名の抽出
46
+ ExportTable = LTrim(Mid(buf, ExportTableStart + ExTable_StartLen, ExportTableEnd - ExportTableStart - ExTable_StartLen))
47
+
48
+ '件数検索値の文字数を調べる
49
+ ExNumber_StartLen = Len(EXNUMBER_SEARCH_START)
50
+
51
+ '件数の抽出
52
+ ExportNumber = Mid(buf, ExportNumberStart + ExNumber_StartLen, ExportNumberEnd - ExportNumberStart - ExNumber_StartLen)
53
+
54
+
55
+ ' ThisWorkbook.Worksheets(SHEET_RESULT).Cells(i, CELLS_EXTABLE).Value = ExportTable
56
+ ' ThisWorkbook.Worksheets(SHEET_RESULT).Cells(i, CELLS_EXNUMBER).Value = ExportNumber
57
+ cnt = cnt + ADDITION
58
+
59
+ Else
60
+
61
+ '2回目以降の取込
62
+ 'テーブル名の抽出
63
+ ExportTable = LTrim(Mid(buf, ExportTableStart + ExTable_StartLen, ExportTableEnd - ExportTableStart - ExTable_StartLen))
64
+
65
+ '件数の抽出
66
+ ExportNumber = Mid(buf, ExportNumberStart + ExNumber_StartLen, ExportNumberEnd - ExportNumberStart - ExNumber_StartLen)
67
+
68
+ '抽出した文字の貼り付け
69
+ ' ThisWorkbook.Worksheets(SHEET_RESULT).Cells(i, CELLS_EXTABLE).Value = ExportTable
70
+ ' ThisWorkbook.Worksheets(SHEET_RESULT).Cells(i, CELLS_EXNUMBER).Value = ExportNumber
71
+
72
+ cnt = cnt + ADDITION
73
+
74
+ End If
75
+ Next i
76
+ Range(Cells(INITIAL_NUMBER, CELLS_EXTABLE), Cells(1000, EXTABLE)) = Arr
77
+ Range(Cells(INITIAL_NUMBER, CELLS_EXNUMBER), Cells(1000, EXNUMBER)) = Arr

1

追記文を改定

2019/07/01 07:32

投稿

mmm_x
mmm_x

スコア10

title CHANGED
File without changes
body CHANGED
@@ -7,4 +7,17 @@
7
7
 
8
8
  どうすれば二次元配列に値を記憶させるのでしょうか・・・?
9
9
 
10
- 質問の仕方も初心者でわかりづらくなってしまい申し訳ございません。
10
+ 質問の仕方も初心者でわかりづらくなってしまい申し訳ございません。
11
+
12
+ 追記
13
+ テキストファイルからinstr関数を使用したあと文字の抽出mid関数などを用いてString文を読み取りそれをセルに挿入します。
14
+
15
+ Len()
16
+ LTrim(Mid())
17
+ ThisWorkbook.Worksheets(シート名).Cells(i, j).Value = テキスト値
18
+ i= i+ 1
19
+ これをDo Loop文で繰り返ししているので処理が遅いです。
20
+
21
+ Q.1セルずつ、1行ずつコピーするのは必須でしょうか?
22
+
23
+ A.必須ではありません。きちんと値さえ入れば大丈夫です