Ada*_*ski 6 html csv excel vba http
我写了一个简单的Web服务,返回大量的csv数据.我将使用Excel的"来自Web的数据"功能以表格格式将其导入Excel.
有没有办法让Excel自动解析返回到各个列的csv字段作为导入操作的一部分?
目前,我这样做的唯一方法是首先将数据导入单个列,然后编写VBA代码以选择数据并使用它进行拆分TextToColumns
.这感觉很乱/容易出错.
我的另一个选择是修改Web服务器以将数据作为HTML提供服务.但是,我不愿意这样做,因为在每个csv字段周围添加标签会极大地影响返回的数据量.
亚当斯基,
这是我用的东西。我在互联网上找到了核心,但不知道在哪里。
它的作用是打开一个制表符分隔的文件并读取 Excel 工作表中的数据
If Answer1 = vbYes Then 'I asked prior if to import a tab separated file
Sheets("ZHRNL111").Select 'Select the sheet to dump the data
On Error Resume Next
With ActiveSheet
If .AutoFilterMode Then .ShowAllData 'undo any autofilters
End With
Sheets("ZHRNL111").Cells.Clear 'remove any previous data
On Error GoTo 0
Range("A1").CurrentRegion.Delete
Fname = MyPath & "\LatestReports\Report-111.tsv"
Open Fname For Input As #1
iRow = 1
Line Input #1, Record
On Error Resume Next
Do Until EOF(1)
P = Split(Record, vbTab)
For iCol = 1 To 14
Cells(iRow, iCol) = P(iCol - 1)
Next iCol
iRow = iRow + 1
Line Input #1, Record
Loop
On Error GoTo 0
Close 1
End If
Run Code Online (Sandbox Code Playgroud)
问候,
罗伯特·伊布林克