質問編集履歴

1

解決

2019/12/25 05:13

投稿

zazabi
zazabi

スコア24

test CHANGED
File without changes
test CHANGED
@@ -85,3 +85,85 @@
85
85
  現状、エラーは表示されないものの欲しい結果を得られていません。
86
86
 
87
87
  最後の「tenki.Value = ws1.Range(LastRow)」が原因だと思いますので、どう修正したら転記できるがご教授お願いします。
88
+
89
+
90
+
91
+ ###追記:
92
+
93
+ 自分なりに作成して期待していた結果を得る事が出来ました。
94
+
95
+ ```vba
96
+
97
+ Sub tenki()
98
+
99
+ '変数
100
+
101
+ Dim csv As Variant '転記元csvシート_拡張子付き
102
+
103
+ Dim csvfile As Workbook '転記元csvシート_オブジェクト
104
+
105
+ Dim csvname As String '転記元csvの名前
106
+
107
+ Dim csvsheet As String '転記元csvのシート名
108
+
109
+ Dim tenki1 As String '転記元セル
110
+
111
+
112
+
113
+ '転記するcsvシートを選択する。
114
+
115
+ ChDir "C:\"
116
+
117
+ csv = Application.GetOpenFilename(FileFilter:="CSVファイル(*.csv),*.csv", Title:="CSVファイルの選択")
118
+
119
+ If OpenFileName <> "False" Then
120
+
121
+ Workbooks.Open csv
122
+
123
+ 'ファイル名を取得
124
+
125
+ csvname = Dir(csv)
126
+
127
+ 'シート名を取得
128
+
129
+ csvsheet = ActiveSheet.Name
130
+
131
+ Else
132
+
133
+ MsgBox "キャンセルされました"
134
+
135
+ End If
136
+
137
+
138
+
139
+ '転記するデータを取得
140
+
141
+ Workbooks(csvname).Activate
142
+
143
+ ActiveSheet.UsedRange.Select
144
+
145
+ tenki = Selection.Address
146
+
147
+
148
+
149
+ '転記する
150
+
151
+ Worksheets(csvsheet).Range(tenki).Copy _
152
+
153
+ Destination:=ThisWorkbook.Worksheets("<転記先ファイルのシート名>").Range("<転記先シートの起点となるセル座標>")
154
+
155
+
156
+
157
+ 'コピーを解除
158
+
159
+ Application.CutCopyMode = False
160
+
161
+
162
+
163
+ 'csvファイルを閉じる(保存無し)
164
+
165
+ ActiveWorkbook.Close SaveChanges:=False
166
+
167
+ End Sub
168
+
169
+ ```