簡體   English   中英

VBA:QueryTables:如何不考慮TextFileOtherDelimiter

[英]VBA : QueryTables : how to NOT take into account TextFileOtherDelimiter

我使用VBA for Excel進行了故障排除:使用時

With ActiveSheet.QueryTables.Add(Connection:=ConnString, Destination:=SomeRange)
    .Name = _
    " "
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .TextFilePromptOnRefresh = False
    .TextFilePlatform = 65001
    .TextFileStartRow = 1
    .TextFileParseType = xlDelimited
    .TextFileTextQualifier = xlTextQualifierDoubleQuote
    .TextFileConsecutiveDelimiter = False
    .TextFileTabDelimiter = False
    .TextFileSemicolonDelimiter = False
    .TextFileCommaDelimiter = True
    .TextFileSpaceDelimiter = False
    .TextFileColumnDataTypes = Array(1)
    .TextFileDecimalSeparator = ","
    .TextFileTrailingMinusNumbers = True
    .Refresh BackgroundQuery:=False
End With

導入請求會自動在我的導入中攜帶我在手動導入中請求的“其他分隔符”。

即我手動使用“-”作為分隔符導入了文件,宏將表現為好像包含以下行:

.TextFileOtherDelimiter = "-"

我嘗試使用

.TextFileOtherDelimiter = False

但它不起作用,因為它的行為與

.TextFileOtherDelimiter = "F"

我的問題:如何指定僅使用“,”定界符而不是任何其他解析符(無論以前在計算機上發生過任何其他導入),都應解析此導入?

供將來參考,我沒有找到不強制使用其他定界符的方法,但是以下兩種解決方法似乎可行:

  • 強制將otherdelimiter設置為與第一個定界符相同的值(如果沒有第一個定界符,將不起作用)

     .TextFileOtherDelimiter = "," 
  • 使用永遠不會出現在文件中的定界符(如果有任何字符,但第一個定界符可能會出現在文件中將不起作用)

     .TextFileOtherDelimiter = "|" 

由於這兩種變通辦法都不能解決一般情況下的問題,因此我認為它不適合

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM