分享

将当前工作表的数据保存为以逗号分隔的文本文件(1)

 L罗乐 2017-11-27

你如果需要将当前工作表的数据保存为以逗号分隔的文本文件,然后可导入其他程序,那么下列代码即可实现。

分隔符可根据需要修改,如用'|'分隔。

Option Explicit

Sub WriteText()

    Dim r&, c&, Filename$, i&, j&, mystr$

    Dim t1, t2


    t1 = Now()    '计时开始


    With ActiveSheet

        '获取活动工作表中数据区域的行数赋给变量r

        r = .Range('A' & Rows.Count).End(xlUp).Row

        '根据不同的Office版本(2007为12.0)对数据列数取不同的值

        If Application.Version >= '12.0' Then

            c = .Range('XFD1').End(xlToLeft).Column

        Else

            c = .Range('IV1').End(xlToLeft).Column

        End If

        '用活动工作表名称作为文本文件的文件名

        Filename = .Name & '.txt'

    End With


    '创建打开文本文件,准备写入数据,文件将保存到当前目录

    Open ThisWorkbook.Path & '\' & Filename For Output As #1


    '从第1行到最后一行逐行循环

    For i = 1 To r

        mystr = ''    '置空字符

        '每行中从第一列到最后一列的前一列循环

        For j = 1 To c - 1

            '加分隔符号,也可据修改为竖线等

            mystr = mystr & Cells(i, j) & ','

        Next j

        '对最后一列单独处理,该列不加分隔符

        mystr = mystr & Cells(i, j)

        '向文本文件写入数据

        Print #1, mystr

    Next i


    '关闭文本文件

    Close #1


    t2 = Now()    '计时结束

    MsgBox '用时:' & Format(t2 - t1, 'h小时m分s秒')

End Sub


看图吧


以下为模拟数据:


转换结果:

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多