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

回答編集履歴

1

変数名を整理

2020/09/15 21:05

投稿

kuma_kuma_
kuma_kuma_

スコア2506

answer CHANGED
@@ -3,42 +3,50 @@
3
3
  ### ソースコード
4
4
  ```vba
5
5
  Sub sample1()
6
+
6
- Dim i As Long ' 書きこむ位置
7
+ Dim lngRowsNo As Long ' 書きこむ位置
7
- Dim s As Long ' シートの番号
8
+ Dim lngSheetIndex As Long ' シートの番号
8
- Dim strFile As String ' Excelファイルの場所
9
+ Dim strFile As String ' Excelファイルの場所
9
- Dim xls As New Excel.Application ' Excel
10
+ Dim xlsAcq As New Excel.Application ' 取得側Excel
10
- Dim wb As Workbook ' Excelブック
11
+ Dim wbAcq As Workbook ' 取得側Excelブック
11
- Dim ws As Worksheet ' Excelシート
12
+ Dim wsAcq As Worksheet ' 取得側Excelシート
13
+ Dim wsSet As Worksheet ' 設定側Excelシート
12
- Const Path As String = "ここでフォルダのパスを指定"
14
+ Const strPath As String = "ここでフォルダのパスを指定"
15
+ Set wsSet = ActiveSheet
16
+
13
- strFile = Dir(Path & "*.xls")
17
+ strFile = Dir(strPath & "*.xls")
14
- i = 1
18
+ lngRowsNo = 1
15
- Do While strFile <> ""
19
+ Do Until strFile = ""
16
20
  '----- Excelブックを開く
17
- Set wb = xls.Workbooks.Open(Path & strFile)
21
+ Set wbAcq = xlsAcq.Workbooks.Open(strPath & strFile)
18
22
 
19
23
  '----- シートを検索
20
- For s = 1 To wb.Worksheets.Count
24
+ For lngSheetIndex = 1 To wbAcq.Worksheets.Count
21
25
  '----- 「更新」シートを検索
22
- If wb.Worksheets(s).Name = "更新" Then
26
+ If wbAcq.Worksheets(lngSheetIndex).Name = "更新" Then
23
27
  '----- 「更新」シートを変数へ登録
24
- Set ws = wb.Worksheets(s)
28
+ Set wsAcq = xlsAcq.Worksheets(lngSheetIndex)
25
29
  '----- 「更新」シートの内容を現在のシートにコピー(自由に変更して下さい)
26
- Cells(i, 1) = ws.Cells(1, 1)
30
+ wsSet.Cells(lngRowsNo, 1) = wsAcq.Cells(1, 1)
27
31
  '----- 書きこむ位置移動
28
- i = i + 1
32
+ lngRowsNo = lngRowsNo + 1
29
33
  '----- 検索の終了
30
34
  Exit For
31
35
  End If
32
- Next s
36
+ Next lngSheetIndex
33
37
 
34
38
  '----- シート参照の解放
35
- Set ws = Nothing
39
+ Set wsAcq = Nothing
36
40
  '----- ブックを閉じる
37
- wb.Close Savechanges:=False
41
+ wbAcq.Close Savechanges:=False
38
42
  '----- 次のファイルへ
39
43
  strFile = Dir()
40
44
  Loop
45
+
41
46
  '----- Excelへの参照の解放
42
- Set xls = Nothing
47
+ Set xlsAcq = Nothing
48
+
43
49
  End Sub
50
+
51
+
44
52
  ```