楼主: naruto_zw
1196 2

[问答] 想要获取外部文件字段个数 [推广有奖]

  • 1关注
  • 1粉丝

硕士生

2%

还不是VIP/贵宾

-

威望
0
论坛币
8 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2897 点
帖子
91
精华
0
在线时间
77 小时
注册时间
2011-11-10
最后登录
2019-6-11

楼主
naruto_zw 发表于 2013-5-20 16:54:51 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
原本是分隔符为逗号的.del文件,我先将其另存为了.txt格式,再通过vba获得字段个数
vba程序如下:
Sub fl()
Dim str
Open "E:\new\861.del.TXT" For Input As #1
Line Input #1, str
Dim arr() As String
arr = Split(str, ",")
Range("B1") = UBound(arr)
Close #1
End Sub

由于文件时这种类型的:

“93883940”,"十点半共轭举动","92904","1","","HDJEBND","1998-09-09"

所以以上vba做出来的结果为0.
请各位帮忙解决!!!

另外,请问.del的文件能直接导入到excel吗?

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:string Input tring 请各位帮忙 Bound excel 程序

回帖推荐

naruto_zw 发表于3楼  查看完整内容

首先将del文件转换成txt文件,再将txt文件批量导入excel。获得要导入的txt文件的文件名,将其复制到新的工作薄的sheet1中,在运行如下代码,全部导入到excel之后计算每个工作的列数即可 Sub Macro3() Dim k As Integer For k = 2 To Range("A65536").End(xlUp).Row Sheets(k).Activate With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;E:\" & Sheets("Sheet1").Cells(k, 2).Value _ ...

本帖被以下文库推荐

沙发
controlpanel 在职认证  发表于 2013-5-23 19:54:29
直接按文本文件导入就是。
其实,我就是传说中的控制面板……

藤椅
naruto_zw 发表于 2013-5-25 14:13:40
首先将del文件转换成txt文件,再将txt文件批量导入excel。获得要导入的txt文件的文件名,将其复制到新的工作薄的sheet1中,在运行如下代码,全部导入到excel之后计算每个工作的列数即可
Sub Macro3()
    Dim k As Integer
    For k = 2 To Range("A65536").End(xlUp).Row
    Sheets(k).Activate
    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;E:\" & Sheets("Sheet1").Cells(k, 2).Value _
        , Destination:=Range("$A$1"))
        .Name = Sheets(1).Cells(k, 3).Value
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 936
        .TextFileStartRow = 1
        .TextFileParseType = xlDelimited
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = False
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = True
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With

    Sheets(k).Name = Sheets("Sheet1").Cells(k, 1).Value
    Next k
End Sub
已有 1 人评分经验 论坛币 收起 理由
客初 + 20 + 20 热心帮助其他会员

总评分: 经验 + 20  论坛币 + 20   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 11:26