Sub ログファイルの読込み() Dim wkF As String '読込み先のシートを空にする Workbooks(xMyXLS).Activate Sheet(xログ).Select Rows("1:1").Select Range(Selection, Selection.End(xlDown)).Select Selection.Delete shift:=xlUp 'ログファイルを開いてシートに読込む。 'ログファイル名が新しいファイル名に、 'ファイルの拡張子を除いた名がシート名なる。 wStr = xMacroPass & "\" & xLogFile wkF = Dir(wStr) If wkF = "" Then MsgBox "ログファイルが存在しないので終了します。", vbOKOnly, xMyXLS Workbooks(xMyXLS).Activate Application.Quit ActiveWindow.Close SaveChangs:=False End If Workbooks.OpenText Filename:=wStr, origin:=932 '以下省略 '元の1行目から最後までをコピーして、 '送り先側の1行目に「コピーしたセルの挿入」をする MaxROW = ActiveSheet.Cells(ActiveSheet.Rows.Count, "A").End(xlUp).Row wkF = Range("E1").Value If MaxROW = 0 Or wkF = "" Then MsgBox "ログファイルがゼロ件なので終了します。", vbOKOnly, xMyXLS Application.DisplayAlerts = False '確認画面表示を停止 Application.Quit 'ログファイル側の終了 ActiveWindow.Close SaveChangs:=False Workbooks(xMyXLS).Activate Application.Quit 'マクロ側の終了 ActiveWindow.Close SaveChangs:=False End If wStr = "1:" & MaxROW Rows(wStr).Select Selection.Copy Workbooks(xMyXLS).Activate Sheets(xログ).Select Rows("1:1").Select Selection.Insert shift:=xlDown 'ログファイル側を閉じる Application.DisplayAlerts = False '確認画面表示を停止 Workbooks(xLogFile).Activate ActiveWindow.Close SaveChangs:=False 'ソートする Workbooks(xMyXLS).Activate Sheets(xログ).Select Range("A1").CurrentRegion.Select Selection.Sort key1:=Range("A1") '以下省略 End Sub
(注意)入力ミスがあるかもしれません。ご了承のほど。
(元の日記本文はこちら)