質問編集履歴
1
頂いたアドバイスをもとに質問内容を修正いたしました。よろしくお願いいたします。
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
はじめまして。プログラミング初心者です。
|
2
2
|
この度VBAを使用して以下のようなプログラムを作りたいです。
|
3
3
|
|
4
|
+
**【作成したいプログラム】**
|
4
5
|
①Excel上でボタンを押下
|
5
6
|
②フォルダを選択
|
6
7
|
③「sh~」で始まるファイル以外のテキストファイルをすべて1行ずつ読み込む
|
@@ -9,9 +10,20 @@
|
|
9
10
|
・ファイル名(Excel:B2~)
|
10
11
|
・件数(「~ 件数=○○)」の○○部分のみ抽出)(Excel:C2~)
|
11
12
|
|
13
|
+
現在、①②はできているのですが、③④で躓いています。
|
14
|
+
|
15
|
+
**【現状】**
|
16
|
+
・ファイルのフルパスを取得後、MsgBox FilePath(i)で中身が正しく出力されている
|
17
|
+
⇒取得したパスを使用し、フォルダの中を1行ずつ見る、という方法がわからない。
|
18
|
+
・(内容を編集した結果手前でエラーが出てしまって今はでないのですが)
|
12
|
-
|
19
|
+
エクセルに結果を出力した際、文字化けしてしまっている
|
20
|
+
⇒UTF-8にしたい
|
13
|
-
|
21
|
+
・日付、ファイル名、件数にそれぞれ変数を指定し結果を得たいが
|
14
|
-
エラーが
|
22
|
+
型が間違っていますというエラーが出てしまって設定できない。
|
23
|
+
|
24
|
+
**【発生しているエラー】**
|
25
|
+
・実行時エラー55 ファイルは既に開かれています。
|
26
|
+
|
15
27
|
|
16
28
|
初めて書いたコードなのであきれてしまうような内容かもしれませんが、
|
17
29
|
これから習得したいと頑張っておりますのでどなたか模範解答、またはアドバイス
|
@@ -21,6 +33,8 @@
|
|
21
33
|
教えていただけると嬉しいです。
|
22
34
|
|
23
35
|
※途中MsgBoxがあるのは確認用です。
|
36
|
+
※変数の宣言が途中コメントになっているのはインターネットから引用したものを
|
37
|
+
自分で先頭に宣言するよう編集したため、残しておこうとコメントにしました。
|
24
38
|
|
25
39
|
```ここに言語を入力
|
26
40
|
Sub GetAllTextData()
|
@@ -60,7 +74,7 @@
|
|
60
74
|
'Dim FilePath As Variant
|
61
75
|
ReDim FilePath(1 To 100) As Variant
|
62
76
|
|
63
|
-
'指定フォルダ内の.
|
77
|
+
'指定フォルダ内の.logファイルを探索します
|
64
78
|
i = 0
|
65
79
|
For Each File In FSO.GetFolder(Fname).Files
|
66
80
|
If InStr(File.Name, "sh") > 0 Then
|