質問: Array(i, 2) Next 'ファイルOpen Workbooks.OpenText Filename:=strFileName, StartRow:=1, _ DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter _ :=False, Tab:=False, Semicolon:=False, Comma:=True, _ Space:=False, Other:=False, FieldInfo:=vrnFieldInfo End Sub
回答: 問題や知りたいことがいくつかあるように読めますが、どれでしょうか。 * ファイルを開けない 提示されたコードで動作するように思います。 * 開いたファイルを閉じる方法がわからない ブックとして開かれているはずなので、ブックの`Close`メソッドでいいと思いますが、`OpenText`ステートメントでは開いたブックを取得できないため、別途取得する必要があります。 *手抜きパターン`ActiveWorkBook.Close` **ファイルを開いた状態のまま変更がなければ**アクティブなブックであるはずです。 変更される想定があるならこの方法は使えません。 *やや手抜きパターン`WorkBooks(Dir(strFileName)).Close` ファイルが存在すれば`Dir`関数がファイル名を返す動作を利用します。無い場合は空文字列が返されますが、ファイルを開けているので無いはずがないので気にしないことにします。 * 削除するファイル(名)の指定方法がわからない 前段で閉じられているはずなので`kill strFileName`で良いと思います。 ダイアログで取得したファイル名はフルパスであり、提示コードでは拡張子部分をを変更しているだけですので、フルパスになっているはずです。 もしかしたら誤解しているかも?ということで補足: ファイルがコピーされるフォルダーはコピー元のファイルと同じになります。ActiveSheet(VBAを書いているブックのことですよね?)ではありません。もちろん、それらが同じフォルダーにあるならば結果的に同じことです。