vba代码,读取txt文件,txt文件第一行有ID,name,class等等,找到class对应的数据,写入工作簿的sheet1里面class字段

使用 VBA 读取文本文件,并将其内容根据 class 字段分别保存在工作簿的 sheet1 中的示例代码:

Sub Example()
    Dim filePath As String
    Dim fileNumber As Integer
    Dim line As String
    Dim sheet1 As Worksheet
    Dim rowNumber As Long
    
    ' 要读取的文件路径
    filePath = "C:\File.txt"
    
    ' 创建新工作簿,并获取要写入数据的工作表
    Workbooks.Add
    Set sheet1 = ActiveWorkbook.Sheets(1)
    
    ' 在要写入数据的工作表中指定列的位置
    Dim colName As String
    colName = "C" '要保存到的列
    
    ' 打开并读取文件
    fileNumber = FreeFile()
    Open filePath For Input As #fileNumber
    
    ' 获取文件第一行中每个字段的位置
    line = Line Input #fileNumber
    Dim fields() As String
    fields = Split(line, ",")
    Dim classIndex As Integer
    For i = 0 To UBound(fields)
        If fields(i) = "class" Then
            ' 记录 class 字段的位置
            classIndex = i
            Exit For
        End If
    Next i
    
    rowNumber = 1
    Do Until EOF(fileNumber)
        Line Input #fileNumber, line
        
        ' 将行按逗号进行拆分
        fields = Split(line, ",")
        
        ' 将 class 字段的值写入到指定的列中
        sheet1.Range(colName & rowNumber).Value = fields(classIndex)
        
        rowNumber = rowNumber + 1
    Loop
    Close #fileNumber
    
End Sub



在上面的代码中,我们首先设置要读取的文件路径,
并使用 Workbooks.Add 创建了一个新的工作簿。
然后,我们使用 Set 语句获取了其中的 sheet1。

接下来,我们使用 colName 变量指定了要写入数据的列的位置。
在打开文件并读取其内容之后,
我们使用 Line Input #fileNumber 函数读取文件的第一行,
将其按逗号进行拆分,并查找 class 字段的位置。

在处理每一行的数据时,我们再次将该行按逗号进行拆分,
并将 class 字段的值写入到指定的列中。

请注意,上面的代码假定每个文件的格式与以下示例类似:
ID,name,class
1,John,A
2,Alice,B
3,Bob,A
4,Eve,C
如果每个文件的格式有所不同,
则可以根据需要更改对应的代码,
以确保将数据正确地写入到工作表中。








  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值