エクセルを使用してcsvの結果をマクロの入っているbookに移行してきたいと考えています。
現在、ファイルを指定していますがアンダーバー以前が複数パターンあるのでそこをワイルドカードにしたいのですが
ファイル指定の方法が分かっていません。
フォルダ構成としては以下の通りです。
任意のフォルダ
┃
┣マクロのあるブック
┣*_因果_NodeAcc.csv
┣*_因果_NodeDisp.csv
┣*_因果_Column.csv
┗そのほか使用しないcsv
vba
1Option Explicit 2 3Dim acc As Workbook, dis As Workbook, strain As Workbook 4 5Sub 解析移行() 6 7 Application.ScreenUpdating = False 8 ThisWorkbook.Worksheets("加速度").Range("G4:K170002") = "" 9 ThisWorkbook.Worksheets("変位").Range("G4:K170002") = "" 10 ThisWorkbook.Worksheets("ひずみ").Range("I4:O170002") = "" 11 12 13 ThisWorkbook.Worksheets("加速度").Range("G4").Select 14 Set acc = Workbooks.Open(ThisWorkbook.Path & "\R10M1H-5_tri_因果_NodeAcc.csv") 15 Range("A2:E170002").Copy 16 ThisWorkbook.Worksheets("加速度").Paste 17 Application.CutCopyMode = False 18 acc.Close 19 ActiveSheet.Range("G4").Select 20 21 22 ThisWorkbook.Worksheets("変位").Activate 23 ActiveSheet.Range("G4").Select 24 Set dis = Workbooks.Open(ThisWorkbook.Path & "\R10M1H-5_tri_因果_NodeDisp.csv") 25 Range("A2:E170002").Copy 26 ThisWorkbook.Worksheets("変位").Paste 27 Application.CutCopyMode = False 28 dis.Close 29 ActiveSheet.Range("G4").Select 30 31 32 ThisWorkbook.Worksheets("ひずみ").Activate 33 ActiveSheet.Range("I4").Select 34 Set strain = Workbooks.Open(ThisWorkbook.Path & "\R10M1H-5_tri_因果_Column3.csv") 35 Range("C:C, E:E, G:G, I:I, K:K, M:M").Delete 36 Range("A2:G170002").Copy 37 ThisWorkbook.Worksheets("ひずみ").Paste 38 Application.CutCopyMode = False 39 strain.Close savechanges:=False 40 ActiveSheet.Range("A1").Activate 41 ActiveSheet.Range("I4").Activate 42 43 ThisWorkbook.Worksheets("加速度").Activate 44 ThisWorkbook.Save 45 46End Sub 47
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。