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

質問編集履歴

1

全体のソースを追記しました

2019/11/24 02:56

投稿

tuckQ
tuckQ

スコア64

title CHANGED
File without changes
body CHANGED
@@ -20,7 +20,93 @@
20
20
  ```ここに言語名を入力
21
21
  .Range(.Cells(1, 1), .Cells(EndRow, Endcolumn)).Copy Workbooks(NewBook).Wroksheets(NewSht).Rows(1)
22
22
  ```
23
+ 全体のソースは下記となります。
24
+ ```
25
+ Sub IntegPro()
23
26
 
27
+
28
+ '変数宣言
29
+
30
+ Dim MacroBook As String
31
+ Dim MacroSht As String
32
+ Dim InputPath As String
33
+ Dim OutputPath As String
34
+ Dim Outputfile As String
35
+ Dim InputFile As String
36
+ Dim i As Integer
37
+ Dim NewBook As String
38
+ Dim NewSht As String
39
+ Dim EndRow As Long
40
+ Dim Endcolumn As Integer
41
+ Dim DataBook As String
42
+ Dim Datasht As String
43
+
44
+ '実行ファイルとシートの定義
45
+ MacroBook = ActiveWorkbook.Name
46
+ MacroSht = ActiveSheet.Name
47
+
48
+ '新規ブックを作成し、それのブックとシートを定義する
49
+ Workbooks.Add
50
+ NewBook = ActiveWorkbook.Name
51
+ NewSht = ActiveSheet.Name
52
+
53
+ '入力パスや出力パス、出力ファイルの定義
54
+ With Workbooks(MacroBook).Worksheets(MacroSht)
55
+ .Activate
56
+ InputPath = .Cells(2, 3).Value & "\"
57
+ OutputPath = .Cells(3, 3).Value & "\"
58
+ Outputfile = .Cells(4, 3).Value
59
+ End With
60
+
61
+ '入力ファイルを定義
62
+ i = 0
63
+ Do While Workbooks(MacroBook).Worksheets(MacroSht).Cells(7 + i, 3).Value <> ""
64
+
65
+ 'ファイルを開く
66
+ Workbooks.Open InputPath & Workbooks(MacroBook).Worksheets(MacroSht).Cells(7 + i, 3).Value
67
+
68
+ '定義する
69
+ DataBook = ActiveWorkbook.Name
70
+ Datasht = ActiveSheet.Name
71
+
72
+ 'データファイルの最終行と最終列を記憶する
73
+ With Workbooks(DataBook).Worksheets(Datasht)
74
+ EndRow = .Cells(Rows.Count, 1).End(xlUp).Row
75
+ Endcolumn = .Cells(1, Columns.Count).End(xlToLeft).Column
76
+
77
+
78
+ '開いたファイルのデータ部分をコピペする。(1回目だけデータ名もコピペする)
79
+ If i = 0 Then
80
+
81
+ '1回目だけ
82
+ .Range(.Cells(1, 1), .Cells(EndRow, Endcolumn)).Copy Workbooks(NewBook).Wroksheets(NewSht).Rows(1)
83
+
84
+ Else:
85
+
86
+ '2回目以降
87
+ .Range(.Cells(2, 1), .Cells(EndRow, Endcolumn)).Copy Workbooks(NewBook).Wroksheets(NewSht).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
88
+
89
+ End If
90
+
91
+ 'データファイルを閉じる
92
+ Workbooks(DataBook).Close SaveChanges:=False
93
+
94
+ End With
95
+ i = i + 1
96
+ Loop
97
+
98
+ '統合したファイルを名前を付けて保存
99
+ Workbooks(NewBook).Worksheets(NewSht).Activate
100
+ ActiveWorkbook.SaveAs Filename:= _
101
+ OutputPath & Outputfile & ".xlsx", FileFormat:= _
102
+ xlOpenXMLWorkbook, CreateBackup:=False
103
+
104
+
105
+ '閉じる
106
+ ActiveWindow.Close
107
+ End Sub
108
+ ```
109
+
24
110
  ### 試したこと
25
111
 
26
112
  末尾のRows(1)の部分をCells(1,1)に指定したり試してみましたが、原因がわかりません。