1つのスプレッドシートを別のスプールシートから開いて、表示しないようにしようとしています。次に、TextToColumns機能を使用して、列のうちの1つの列の形式を現在の日付に変更したいと考えています。変更を保存し、ファイルを自動的に閉じます。VBAでクローズされたExcelシートを変更する
私が以下を実行すると、解析するデータが選択されていないというメッセージが表示されます。何かご意見は?
Sub Test()
Dim xlApp As New Excel.Application
Dim xlWB As Excel.Workbook
Dim xlWS As Excel.Worksheet
xlApp.Visible = False
Set xlWB = xlApp.Workbooks.Open("directory of file")
Set xlWS = xlWB.Worksheets("Sheet 1")
xlWS.Unprotect
xlWS.Columns("F:F").Select
Selection.TextToColumns Destination:=Range("F1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 4), TrailingMinusNumbers:=True
Set xlWS = Nothing
xlApp.DisplayAlerts = False
xlWB.Close True
Set xlWB = Nothing
xlApp.Quit
Set xlApp = Nothing
End Sub
あなたは閉じているという意味ですか?シートが入っているワークブックが閉じていることを意味しますか?それとも別のシートに焦点が当てられているのですか? – gizlmo
2つのワーキングブックがあります。 1つは開いています。もう一つはそうではありません。開いているものをバックグラウンドで開き、いくつかの列のデータ型を変更したいと思います。変更を保存し、非表示のブックを次に閉じます。 – kit