[英]Text to Columns issue in excel VBA
我正在嘗試創建一個宏,當在一個工作簿中運行該宏時,它將在后台打開另一個工作簿,將該新打開的工作簿的F列從文本更改為日期,保存更改,然后關閉剛剛打開的工作簿。 在代碼中,我嘗試不斷收到錯誤消息“運行時錯誤'1004':Range類的TextToColumns方法失敗”。 您知道哪里出了問題,我該如何解決?
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_file_to_open")
Set xlWS = xlWB.Worksheets("worksheet_of_data")
xlWS.Unprotect
xlWS.Columns("F:F").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
您需要完全限定Destination:=Range("F1")
。 如果不是,它將是ActiveSheet
Range("F1")
。 這可能是錯誤的,因為在xlWS
應為Range("F1")
。
所以
xlWS.Columns("F:F").TextToColumns Destination:=xlWS.Range("F1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 4), TrailingMinusNumbers:=True
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.