Excel から CSV を開くための vba を作成する必要があります。問題は、ファイルの形式が次のとおりであることです。
constan_name_file . YYY
例えば_
file1.124514 (1 日目)
file1.144521 (2 日目)
file1.152132 (別の日)
ファイル名は定数ですが YYY は可変ですが、中のファイルは CSV です。それを開くことは可能ですか?
Excel 2007 で csv ファイルを開くときに書式設定を維持できないという問題がありました。ファイル拡張子を csv から txt に変更します。
Option Explicit
Function ChangeFileExt(filnamn As String, extensionOld, extensionNew)
Dim oldname, newname as string
oldname = ThisWorkbook.Path & "\" & filnamn & "." & extensionOld
newname = ThisWorkbook.Path & "\" & filnamn & "." & extensionNew
Name oldname As newname
End Function
'...............................................................................
Sub change_extension()
' Objective: Want to keep csv-format at workbook.open
' Rename file from filename.csv to filename.txt
' Open txt-file
' process data
' Rename back to csv-file if neccesary
Dim csv, txt As String
csv = "csv"
txt = "txt"
Call ChangeFileExt("file_name_to_change", csv, txt) ' omit extension in file_name_to_change
...all kinds of code
Call ChangeFileName("file_name_to_change", txt, csv) ' change filename back to original name
End Sub
はい、以下のコードを試してください。
dim sFileName as string
dim sExtension as string
sExtension="YYY"
sfilename=constan_name_file & "." & sExtension
workbooks.open sfilename, Format:=2
ワイルドカードを使用していただきありがとうございます。ついにコードを取得しました。
sub GetFiles(direc As String, fich As String)
Dim strFileName As Variant
strFileName = dir(direc & "\" & fich & ".******")
If Len(strFileName) > 0 Then
'open
end if
End sub
CSVファイルとして強制的に開かないでください
Workbooks.Open Filename:=name, Format:=2
ここで 2 は、ファイルがカンマで区切られていることを指定します http://msdn.microsoft.com/en-us/library/office/ff194819.aspx